ATOM Editor カーソル移動をbash/emacs風に統一。How to install on Ubuntu,Manjaro.

ATOM Editor はめんどくさい?! という前にInstall 

install and customize like bash/emacs.

端末のbash/zshとエディターATOMでおおざっぱな動作を統一しています。カーソル移動とyank程度ではシームレスに使いたいためです。もと記事が初見殺しというご意見をいただいたので、貼り付けるだけで実現できるように改稿しました。

最初から多様なキーや機能があらかじめ用意されているVS CODEとは差がありますね。同じエレクトロンという出自ながら最近VS CODEの完成度の高さに感服しています。追記::この記事は18ヶ月前のものですが、最近ますます、Visual Studio Code が優秀になってきた上、マイクロソフトがGithubを買収しちゃったじゃないですか。笑) ATOM Editor どうなるんでしょうね。2018-08-08

ATOM editor :: How to installl ::ubuntu/Linux Mint

次の3行でインストールできます。
sudo add-apt-repository ppa:webupd8team/atom
sudo apt update 
sudo apt install atom

ATOM editor :: How to installl :: Manjaro/ArchLinux

次の1行でインストールできます。たぶんどちらでもいけます。
sudo pacman -S atom

あるいは
yaourt -S atom


keymap.cson部分:: ターミナル標準になるたけ合わせてみるATOM設定の例
まるごと貼り付ければたぶんうまくいく。
'body':
  'alt-s': 'core:save'  #ctrl-s 廃止という暴挙にでてもいいかな?!
  'ctrl-f': 'core:move-right'   #bash:右
  'ctrl-b': 'core:move-left'    #bash:左
  'ctrl-d': 'core:delete'       #bash:削除 1文字削除
  'ctrl-h': 'core:backspace'    #bash:削除前

  'ctrl-e': 'editor:move-to-end-of-screen-line' #bash:行末

  'ctrl-m': 'editor:newline'        #改行

  'alt-a': 'core:select-all' #'atom-workspace atom-text-editor':が本来所属するチーム★ここなら、一番下に書いたほうがいいのかもしれない。

'atom-text-editor':
  'ctrl-a': 'editor:move-to-first-character-of-line'    #bash行:先頭

'atom-workspace atom-text-editor':
  'ctrl-w': 'editor:delete-to-beginning-of-word'  #直前単語削除
  'ctrl-u': 'custom:bash-ctrl-u'#  ctrl-u ができればbash互換。これで完成。
  'ctrl-k': 'atomic-emacs:kill-line' #以下のselectToFirstCharacterOfLine()の 逆を書いてもよい。

単純代替できないコマンドのケース::ぷち♡ハック

#bash ctrl-u の実現 
パッケージを作るか、コマンドを作成します。後者がカンタンです。例
Keymap.cson へのバインディングの登録です。上の囲みには追記しました。
キーアサインを登録します。

'atom-workspace atom-text-editor':

  'ctrl-k': 'atomic-emacs:kill-line' #以下のselectToFirstCharacterOfLine()の 逆を書いてもよい。
#'editor:delete-line' 行削除

  'ctrl-u': 'custom:bash-ctrl-u'#  ctrl-u ができればbash互換。これで完成。

※ctrl-kの逆。カーソル以前を消す。keymap.cson

  'ctrl-w': 'editor:delete-to-beginning-of-word'  #直前単語削除

以上を貼り付ける。

ctrl-kについてはemacsでも2つの流派みたいなのがありますね。行削除とカーソル以降削除。自分でどうするか決めます。

ctrl-kは、ツーストロークコマンドの要でもあるので、全体キーバインディングを無効にするか、 少し違うキーで妥協したほうがいいのかもしれません。シェル側を変更するなど。共存はできます。

VS CODEのカスタマイズでもほぼ同じことがいえます。
atomic-emacs ではカット動作をオプションで選べますが、全機能キーをいきなり有効にするとemacs風味すぎるので、私は数個のみ使っています。emacs好きな方ならそれ(全面採用からの調整)でいいのだと思います。

#同時に以下ユーザー定義コマンド(CoffeeScript)を書き足す。
起動スクリプト init.cofee 4行で実現できます。

カーソル前文字列をカットしてそれをクリップボードに入れる新規コマンド
#bash ctrl-u 互換 カーソル前文字列をカットしてバッファに。
atom.commands.add 'atom-text-editor', 'custom:bash-ctrl-u', ->
  editor = atom.workspace.getActiveTextEditor()
  editor.selectToFirstCharacterOfLine()
  editor.cutSelectedText()

これでひととおりのbashシェル風味な機能アサインは完成するかと思います。少なくとも私が多用するbash/zshキーはこれでカバーされています。それでいいのだ。
カーソル前文字列をカットしてバッファに」位標準で用意されていればいいのにと思ったりもしますが、ATOMめんどくさい。

Namida Zone :: 神々は細部に宿る――涙とともに、夜な夜なパンをかじった。

Grub2をめぐるあれこれ。テーマ、背景、フォント。それが Cute Grub 計画

No Copyright Girl / ノーコピーライトガール Grubと戯れるという意味のない日常:: Cute Grub 計画 コンピューターの電源オン後、 OS オペレーティングシステムを起動するためのブートローダーが先ず動きだす――ほぼすべてのLinux...