Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
70 changes: 70 additions & 0 deletions .eslintrc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
{
// JS Files
"root": true,
"env": {
"atomtest": true,
"es6": true,
"node": true,
"browser": true
},
"globals": { "atom": "writable" },
"parser": "babel-eslint",
"parserOptions": {
"ecmaFeatures": { "jsx": true },
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": ["only-warn"],
"extends": ["eslint:recommended"],
"overrides": [
{ // Bundled node version with atom has an old ESLint
// TypeScript files
"files": ["**/*.ts", "**/*.tsx"],
"env": {
"atomtest": true,
"es6": true,
"node": true,
"browser": true
},
"globals": { "atom": "writable" },
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaFeatures": { "jsx": true },
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": ["@typescript-eslint", "only-warn"],
"extends": [
"eslint:recommended",
"plugin:@typescript-eslint/eslint-recommended",
"plugin:@typescript-eslint/recommended"
],
"rules": {
"@typescript-eslint/explicit-function-return-type": "off",
"@typescript-eslint/camelcase": "off",
"@typescript-eslint/no-use-before-define": "off",
"@typescript-eslint/member-delimiter-style": "off"
}
},
{
// CoffeeScript files
"files": ["**/*.coffee"],
"env": {
"atomtest": true,
"es6": true,
"node": true,
"browser": true
},
"globals": { "atom": "writable" },
// "parser": "eslint-plugin-coffee",
"parser": "eslint-plugin-coffee",
"parserOptions": {
"ecmaFeatures": { "jsx": true },
"ecmaVersion": 2018,
"sourceType": "module"
},
"plugins": ["coffee", "only-warn"],
"extends": ["plugin:coffee/eslint-recommended"]
}
]
}
64 changes: 64 additions & 0 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: CI
on:
- push
- pull_request

jobs:
Test:
if: "!contains(github.event.head_commit.message, '[skip ci]')"
name: Julia ${{ matrix.julia_version }} - ${{ matrix.os }} - ${{ matrix.arch }} - Atom ${{ matrix.atom_channel }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os:
- ubuntu-latest
- macos-latest
- windows-latest
atom_channel: [stable] # beta
julia_version: ["1.3", "nightly"]
arch: ["x64"]
steps:
- uses: actions/checkout@v2
- uses: UziTech/action-setup-atom@v1
with:
channel: ${{ matrix.atom-channel }}
- uses: julia-actions/setup-julia@latest
with:
version: ${{ matrix.julia_version }}
arch: ${{ matrix.arch }}
- name: Versions
run: |
julia -v
apm -v
- name: Install APM dependencies
run: |
apm ci # uses locked module. use `apm install` for non-locked
apm install ink language-julia
node script/postinstall.js
- name: Julia CI
run: julia -e 'include("ci/packages.jl")'
shell: bash
# - name: Run tests 👩🏾‍💻
# run: atom --test spec

Lint:
if: "!contains(github.event.head_commit.message, '[skip ci]')"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v1
with:
node-version: "13.x"
- name: Install NPM dependencies
run: |
npm ci # uses locked module. use `npm install` for non-locked
- name: Lint ✨
run: npm run lint

Skip:
if: contains(github.event.head_commit.message, '[skip ci]')
runs-on: ubuntu-latest
steps:
- name: Skip CI 🚫
run: echo skip ci
52 changes: 0 additions & 52 deletions .travis.yml

This file was deleted.

24 changes: 0 additions & 24 deletions appveyor.yml

This file was deleted.

19 changes: 19 additions & 0 deletions lib/misc/blocks.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
import { TextEditor, Selection } from "atom";
interface LineInfo {
scope: readonly string[];
line: string;
}
export declare function getLine(editor: TextEditor, l: number): LineInfo;
export declare function moveNext(editor: TextEditor, selection: Selection, range: [[number, number], [number, number]]): void;
export declare function get(editor: TextEditor): {
range: number[][] | undefined;
selection: Selection;
line: number;
text: any;
}[];
export declare function getLocalContext(editor: TextEditor, row: number): {
context: string;
startRow: number;
};
export declare function select(editor?: TextEditor | undefined): void;
export {};
Loading