sublimetext3 テンキーのエンターのキーバインドメモ

sublimetext3、しばらく前からテンキーのエンターが無反応になり困ってた。

私は割とテンキーの方も使うので、打つリズムが狂ってしまう。

ちょいとWebを調べてみたが、どうもぴったりのものが無い。おそらく当たり前すぎて情報が出てない類。しゃーないのでデフォルトのキーバインドを検索して見る。すると普通のenterキーはこう書いてある。

	{ "keys": ["enter"], "command": "insert", "args": {"characters": "\n"} }

なるほどねー。インサートコマンドを呼び出して引数として改行コードをいれる、と。テンキーのエンターは”keypad_enter”だから、と。

	{ "keys": ["keypad_enter"],"command":  "insert", "args": {"characters": "\n"}}

これを[基本設定]>[キーバインド]で右のウィンドー(ユーザー)の方に突っ込むと。

そーいや、もう4もとっくに出てるんだけど4を買うかどうするか。visual studio codeの方が評判良いのだよな。諸行無常よなー。さてさて。

SublimeText3で行った設定について 2

CentOS 7用のrpmを作ってibus-mozcをインストールしてみる

■CentOS7上のSublimeText3で日本語環境の作成
ibus-mozc (Linux)
mozc(Linux)
emacs-mozc (Linux)
SublimeMozcInput (Sublime Text)

  1. Fedoraのリポジトリからsrpmを取ってくる
  2. 必要なモノや依存関係のものを抽出し、ビルド
  3. 試行錯誤し、SPECファイルを修正。リビルド。ibus-mozc,mozc,emacs-mozcインストール
  4. 再起動
  5. SublimeMozcのインストール(SublimeText上)
  6. 実際に入力する

0-1.コンパイル環境の構築(root以外で行う)

sudo yum groupinstall "Development Tools"
sudo yum install rpm-build redhat-rpm-config make gcc
mkdir -p ~/rpmbuild/{BUILD,RPMS,SOURCES,SPECS,SRPMS}
cd rpmbuild

0-2.srpmの取得

curl -O ftp://ftp.pbone.net/mirror/archive.fedoraproject.org/fedora/linux/releases/19/Everything/source/SRPMS/m/mozc-1.10.1390.102-1.fc19.src.rpm

1-1.必要なモノを割り出すためのビルド

rpmbuild --rebuild mozc-1.10.1390.102-1.fc19.src.rpm

1-2.必要なモノをyumインストール

sudo yum install protobuf-devel glib2-devel qt-devel zinnia-devel gtk2-devel gyp ibus-devel emacs xemacs xemacs-packages-extra

1-3.ビルドできるか確認

rpmbuild --rebuild mozc-1.10.1390.102-1.fc19.src.rpm
sudo yum install --enablerepo=epel zinnia-devel gyp xemacs xemacs-packages-extra
rpmbuild --rebuild mozc-1.10.1390.102-1.fc19.src.rpm

2-1.RPMSに移動してyum localinstall

cd /home/usename/rpmbuild/RPMS/x86_64/
sudo yum localinstall emacs-common-mozc-1.10.1390.102-1.el7.centos.x86_64.rpm ibus-mozc-1.10.1390.102-1.el7.centos.x86_64.rpm mozc-1.10.1390.102-1.el7.centos.x86_64.rpm mozc-debuginfo-1.10.1390.102-1.el7.centos.x86_64.rpm

2-2.zinnia-tomoeが無い

通常のリポジトリにも無いのでepelで探す

sudo yum search --enablerepo=epel zinnia-tomoe

2-3.ソースインストールし、SPECファイルを編集する

cd ~/rpmbuild
rpm -ivh mozc-1.10.1390.102-1.fc19.src.rpm
cd ~/rpmbuild/SPECS/
vim mozc.spec
Requires: zinnia-tomoe <-- 削除
Requires: zinnia-tomoe-ja <-- 追加
Requires: zinnia-tomoe-zh_CN <-- 追加
cd ~/rpmbuild/SPECS/
sudo yum install --enablerepo=epel zinnia-tomoe-ja zinnia-tomoe-zh_CN
rpmbuild -ba mozc.spec
cd /home/usename/rpmbuild/RPMS/x86_64/
sudo yum localinstall emacs-common-mozc-1.10.1390.102-1.el7.centos.x86_64.rpm ibus-mozc-1.10.1390.102-1.el7.centos.x86_64.rpm mozc-1.10.1390.102-1.el7.centos.x86_64.rpm mozc-debuginfo-1.10.1390.102-1.el7.centos.x86_64.rpm
cd ../noarch
sudo yum localinstall *.rpm

3.デスクトップをログアウトし、vncサーバを再起動する

4-1.ctrl+shift+pでパッケージコントロールを呼び出す。

4-2.「Add Repository」を選択してEnter(注意!)

4-3.「https://github.com/yasuyuky/SublimeMozcInput」を入力

4-4.ctrl+shift+pでパッケージコントロールを呼び出す。

4-5.「sublimemozc」を選択してEnter

5-1.[ctrl]+[¥]で日本語入力になるとなっているが……
私の環境ではこの変換キーが上手く行かなかったので、[ctrl]+[space]に割り当てた

5-2.[ctrl]+[shift]+[p] でコマンドパレットを開く

5-3.keydef というように入力し、Preferences: Key Bindings – Userを選択する

Default (Linux).sublime-keymapが開くので、以下のように追記する

[
{ "keys": ["ctrl+space"], "command": "toggle_mozc" },
]

これで完成。
長かった。

SublimeText3で行った設定について1

■SublimeText3をCentOS7(&xfce)にインストール

■PackageControlのインストール

https://packagecontrol.io/installation
上記のURLに入っているページを参考に
1.View>ShowConsole
2.Sublime Text3のコードをコピーアンドペーストでコンソールに貼り付け、Enter。

■文字コード対応

ConverToUTF8
1.ctrl+shift+pでパッケージコントロールを呼び出す。
2.「Install Package」を選択を選択してEnter
3.「ConverToUTF8」を選択して、Enter
これで、UTF8以外の文書を開く事が出来るようになる。
保存するときには、元の文字コードで保存されるので心配しなくても良い。

■全角スペース対応

TralingSpaces
1.[Preference] → [Settings – User]
“draw_white_space”: “all”
(前の項目の最期に”,”を付けるのを忘れないこと)
2.ctrl+shift+pでパッケージコントロールを呼び出す。
3.「Install Package」を選択を選択してEnter
4.「TralingSpaces」を選択して、Enter
5.[Preference] → [PackageSetting] → [TrailingSpaces] → [Setting – User]
{
“trailing_spaces_regexp”: “ |[ \t]+”
}
を入力保存。再起動。

■対応するカッコを強調する

BracketHighlighter
1.ctrl+shift+pでパッケージコントロールを呼び出す。
2.「Install Package」を選択を選択してEnter
3.「BracketHighlighter」を選択して、Enter

■コマンドプロンプトを自動で開く

Terminal
1.ctrl+shift+pでパッケージコントロールを呼び出す。
2.「Install Package」を選択を選択してEnter
3.「Terminal」を選択して、Enter
4.「ctrl+shift+t」でファイルが存在するフォルダを開く

■オートコンプリート強化

All Autocomplete
1.ctrl+shift+pでパッケージコントロールを呼び出す。
2.「Install Package」を選択を選択してEnter
3.「All Autocomplete」を選択して、Enter

■python実行

SublimeREPL(SublimeREPLは多言語のインタープリターを実行するパッケージ)
1.ctrl+shift+pでパッケージコントロールを呼び出す。
2.「Install Package」を選択を選択してEnter
3.「SublimeREPL」を選択して、Enter

 

日本語環境の作成は、CentOSでは簡単にいかなかったので、別記事で。

さくらVPSのCentOS7上にSublimetext3を使った開発環境を建てる2

デスクトップ環境:X-windowとxfce
リモートのサーバ:tigerVNCサーバ
環境:サーバ:さくらVPS 4Gプラン CentOS7 minimal クライアント:Windows10
■xfceを入れる
0.remiリポジトリを入れる(前提のepelを入れるのを忘れないように)
1.epel,remiリポジトリのenabled=0にしておく
2.デスクトップ関連のgroupinstall
yum groupinstall –enablerepo=epel “X Window System” XFCE Desktop Fonts
3.xfce4-terminalのインストール?必要じゃ無いかも
yum install –enablerepo=epel xfce4-terminal xfce-utils
4.iconのインストール
yum install gnome-icon*

■tigervnc
0.tigervncを入れる
yum install tigervnc*
cp /usr/lib/systemd/system/vncserver@.service /etc/systemd/system/vncserver@:2.service
1.vim /etc/systemd/system/vncserver\@\:2.service を行う
<USER>となっている部分を利用するユーザに変更する

2.自動実行するように変更する
systemctl daemon-reload
systemctl enable vncserver@:2
systemctl restart vncserver@:2

3.ファイアーウォールの設定
firewall-cmd –permanent –zone=public –add-port=5902/tcp
firewall-cmd –reload

■日本語用TTFフォント(Ricty)を入れる
0.gitを入れる
yum install git
1.FontForge のインストール
yum install fontforge
2.Inconsolata(Font) のインストール
git clone https://github.com/google/fonts.git
3.Inconsolataフォントをシステムにコピー
cd fonts/ofl
cp -r inconsolata /usr/share/fonts/inconsolata
4.Migu 1M のインストール
wget https://osdn.jp/projects/mix-mplus-ipa/downloads/63545/migu-1m-20150712.zip
unzip migu-1m-20150712.zip
cd migu-1m-20150712
mkdir /usr/share/fonts/migu-1m
cp migu-1m-*.ttf /usr/share/fonts/migu-1m
5.フォントキャッシュを更新
fc-cache -f -v
6.Rictyスクリプトの入手
git clone https://github.com/yascentur/Ricty.git
7.Rictyスクリプトの実行とインストール
cd Ricty
sh ricty_generator.sh auto
mkdir /usr/share/fonts/Ricty
cp Ricty*.ttf /usr/share/fonts/Ricty
8.フォントキャッシュを更新
fc-cache -f -v

さくらVPSのCentOS7上にSublimetext3を使った開発環境を建てる

今後の方向として、Python使って機械学習を勉強することを目指す。その途中目的地として、Python使ってTwitterbot建てる。できればマルコフ連鎖とか使って。

んで、その開発環境として。VPSのCentOS7上にvncサーバを立てて、リモートデスクトップを使い接続する。んで、そこでSublimetext3を使ってコーディング。

  • デスクトップ環境:X-windowとxfce
  • リモートのサーバ:VNCとxrdpサーバ
  • 日本語環境:ibus-mozc

という感じで進める。進んだら、その状況を記事にする予定。

PyGTKのインストールとGTK+のバージョンをあげる

PyGTKについてはpipのfreeze及びsearchを使ってみたが、入ってる様子が無い。pip install PyGTKしてみたがエラーが出る。エラーが出るがエラーログの場所が分からんorz
多分、今はGTK入ってない、とおもう。sublimetext2が動いてるのはsublimetext2が持っているpython2.6にbundleされてるんだと思うんだが……。

GTK+のバージョンだが、どうもCentOS6.3に入ってるのはちょっと古いみたい。…な気がする。

Installed Packages
gtk+.x86_64                        1:1.2.10-70.el6                         @epel

Installed Packages
gtk2.x86_64        2.18.9-10.el6        @anaconda-CentOS-201207061011.x86_64/6.3

Installed Packages
glib.x86_64                     1:1.2.10-33.el6.rf                         @epel

たぶん、これ、バージョン古いよね?良く分からないんだけど……。なんか探して新しいのを入れないといけないなぁ。多分そこからだと思う。しかし、やたらと最新版入れたら良いものでもないだろうからなぁ。どのバージョン入れるのが一番良いのか調べないといけないな……。

SublimeText2でInputHelperを使っても日本語が入力できない(CentOS6.3)

昨日から使い始めたSublimeText2。かなりイケてるエディターで使いながら感心してた。もともとWindowsユーザの何ちゃってlinuxユーザの俺は、結局GVimを使いこなすことができず、Geditではプラグインをうまくインストールできず。SublimeText2にたどり着いたんだが……。日本語がうまく入力できないのだよね。Linuxでは。

で、検索すると「InputHelper」というパッケージを入れると良いよとでてきたのだけども。自分の環境にいれてもうまくいかないのよねぇ。InputHelperのウィンドーを呼び出して文字を入力するが、InputHelperもSublimeTextもフリーズする。エラー原因を見てみると、

(sublime:6712): Gdk-WARNING **: gdkdrawable-x11.c:952 drawable is not a pixmap or window

(sublime:6712): Gdk-WARNING **: gdkdrawable-x11.c:952 drawable is not a pixmap or window
Traceback (most recent call last):
  File "/home/kunren/.config/sublime-text-2/Packages/InputHelper/lib/linux_text_input_gui.py", line 28, in on_key_press
    self.print_text()
  File "/home/kunren/.config/sublime-text-2/Packages/InputHelper/lib/linux_text_input_gui.py", line 19, in print_text
    buffer = self.textInput.get_buffer()
AttributeError: 'gtk.Entry' object has no attribute 'get_buffer'
Traceback (most recent call last):
  File "/home/kunren/.config/sublime-text-2/Packages/InputHelper/lib/linux_text_input_gui.py", line 23, in destroy
    self.print_text()
  File "/home/kunren/.config/sublime-text-2/Packages/InputHelper/lib/linux_text_input_gui.py", line 19, in print_text
    buffer = self.textInput.get_buffer()
AttributeError: 'gtk.Entry' object has no attribute 'get_buffer'

という表示がでるんだが、意味が分からないorz なんちゃってユーザの限界である。誰か偉い人がたどり着いて解決してくれないかなぁ。無理かなぁ?まぁそのうち誰か良いインプットヘルパーを作ってくれることを期待しよう。

とりあえず、日本語に関しては、メモ帳か何かに書いておいて、それをペーストする感じで使おうと思う。
またそのうち使えるようになるかもしれないし、気長に待とうかな。しかし日本語が自然に使えないとなると、お金払うのちょっと迷うなぁ。でもメインで使うようになったら仕方ないので払うかな。

SublimeText2をCentOS6.3にインストール

Ubuntoでのインストール方法は結構見つかったが、CentOSでの方法が書かれているサイトが見当たらなかったのでメモ。まぁSublimeText2のサイトでも簡単に紹介されてるんだけど。何ちゃってlinuxユーザの俺には分からなかったのです。

今回パクら参考にさせていただいたのは、こちら([Submile Text2] Ubuntu へのインストール手順 | CodeNote.net)。

1.サイトからDLし、展開する。

2.展開したら端末を開いてコマンドを入力。以下同じ

sudo mv Sublime\ Text\ 2 /usr/lib/
sudo ln -s /usr/lib/Sublime\ Text\ 2/sublime_text /usr/bin/sublime
sudo sublime /usr/share/applications/sublime.desktop
[Desktop Entry]
Version=1.0
Name=Sublime Text 2
# Only KDE 4 seems to use GenericName, so we reuse the KDE strings.
# From Ubuntu's language-pack-kde-XX-base packages, version 9.04-20090413.
GenericName=Text Editor

Exec=sublime
Terminal=false
Icon=/usr/lib/Sublime Text 2/Icon/48x48/sublime_text.png
Type=Application
Categories=TextEditor;IDE;Development
X-Ayatana-Desktop-Shortcuts=NewWindow

[NewWindow Shortcut Group]
Name=New Window
Exec=sublime -n
TargetEnvironment=Unity

5.アプリケーションメニューのプログラミンググループに有るSubmile Textのアイコンをデスクトップなりランチャーに固定する