M-x term とかだと引数付けられないので。 (require 'term nil t) (defvar term-shell-command-history nil "History for `term-shell-command'") (defun term-shell-command (command &optional buffer-or-name) "Run COMMAND in terminal emulator. If BUF…
作りました。https://github.com/10sr/emacs-lisp/blob/master/pasteboard.elpbcopy および pbpaste と連携します。 (and (require 'pasteboard.el nil t) (turn-on-pasteboard)) tmux の内側で使う場合、 reattach-to-user-namespace が必要です。 通常、こ…
書きました。https://github.com/10sr/emacs-lisp/blob/master/divide-window.elrequireすると、 M-x divide-window-verticallyと M-x divide-window-horizontallyの2つが使えるようになります。 前置引数を用いることで、分割する数を指定できます。何も指…
ext.add("list-url", function(){ var urls = []; var aa = window.content.document.getElementsByTagName("a"); var text = ""; var alt = ""; for (var i = 0; i < aa.length ; i++) { if(aa[i].href == ""){ continue; } if (aa[i].text == "" && aa[i].…
作った。 いちいちキーバインド覚えてらんねーということで、対話的なシェルと同じ感覚で使えるようなものを目指した。 エディタを起動するようなコマンドは上手くいかない。https://github.com/10sr/emacs-lisp/blob/master/git-command.el設定は例えばこん…
ext.add('view-page-source', function(){ window.content.location.href = "view-source:" + window.content.location.href; }, 'view page source');
つくった。以下をdot.emacsに追加。 (when (require 'dired-list-all-mode nil t) (setq dired-listing-switches "-lhFG") (add-hook 'dired-mode-hook (lambda () (define-key dired-mode-map "a" 'dired-list-all-mode) )))
つくった。使い方: (require 'set-modeline-color nil t) 設定: (setq set-modeline-color-color-alist '((readonly "blue" "white") (overwrite "red" "white") (insert nil nil))) この機能どこかで既に見た気がしなくもない。
マウスがただひたすらにウザいし、フォント設定をターミナルエミュレータと共有できるのが便利なので、いつもemacsは-nw付きで起動してる。 (defun set-terminal-title (&rest args) "" (interactive "sString to set as title: ") (let ((tty (frame-parame…
2012/4/8 追記 書き換えるところを少し増やした。 https://gist.github.com/2337613 ほんとはpatchか何か作った方がいいのかもしれないけど、archの流儀をよく分かってないので。 うちは、無線LANのチップにbroadcom-wlが必要なものを使用してる。 このドラ…
先日、Arch Linuxをインストールした。 そのときのメモはここ。 いくつかのメモを https://www.jottit.com/zku6z/ にまとめてる。 インストール時に一番ハマったのは、パッケージの署名でのエラーだった。pacmanでパッケージをインストールしようとすると、…
ip-address(){ local ip=$(LANG=C ifconfig | grep "inet " | grep -v "127.0.0.1" | awk '{print $2}') test -n "$ip" && printf $1 $ip } ip-address [Addr:%s] 参考 http://d.hatena.ne.jp/gunshot/20081216/p1
ただしとってもおそい battery-status(){ local dir=/sys/class/power_supply/BAT0 if test -d $dir then local st=$(cat $dir/status) local full=$(cat $dir/charge_full) local now=$(cat $dir/charge_now) local rate=$(expr $now \* 100 / $full) print…
2012/4/7追記: (pc-selection-mode 1)があるとそれ以前のキー設定が元に戻ってしまうよう。 dot.emacsに (define-key ctl-x-map (kbd "C-x") nil) を書いても、C-x C-x の定義は C-x C-x runs the command exchange-point-and-mark-nomarkのままなのに、起…
めんどいので擬似的に (add-hook 'term-mode-hook (lambda () (set (make-local-variable 'hl-line-range-function) (lambda () '(0 . 0)))))
2012/3/27 ライブラリ化した。 ここを参考に。 EmacsWiki: Changing Cursor Dynamically (defun my-set-mode-line-color-read-only () "" (let ((state (if buffer-read-only 'readonly (if overwrite-mode 'overwrite 'insert)))) (unless (eq state my-set…
urlsにあるプラグインについてそれぞれインストールされてるか調べ、なかった場合インストールダイアログを出すext。 ext.add('auto-install-plugins', function(ev, arg){ var urls = [ 'https://github.com/mooz/keysnail/raw/master/plugins/yet-another-…
電源ボタンは、/usr/share/X11/XKeysymDBに列挙されたキーを適当に調べた結果、XF86PowerOffであることが分かった。lxdeを使ってるため、~/.config/openbox/lxde-rc.xmlを編集した。以下を正しい箇所に追加。 <keybind key="XF86PowerOff"> <action name="Execute"> <command>suspend.sh</command> </action> </keybind> suspend.shは、https://forums.u…
利点 1. できるパスワードが完全にランダムな文字になる 2. 記憶しなければいけないのは、「文字列」ではなく「形」なので忘れにくい 3. メモを見ても、そこからパスワードが割り出されることはまずない。 欠点 1. 文字表をいつも持ち歩く必要がある(打ち慣…
2012/3/27 ライブラリ化した。 minor mode。 my-dired-display-all-modeをhとかにbindしたりhookに追加したり (setq dired-listing-switches "-lhFG --time-style=long-iso") ; do not add "-a" or "-A" option (define-minor-mode my-dired-display-all-mod…
(setq eshell-prompt-function (lambda () (with-temp-buffer (let (p1 p2 p3 p4) (insert " [") (setq p1 (point)) (insert (abbreviate-file-name default-directory)) (setq p2 (point)) (insert "]\n") (setq p3 (point)) (insert user-login-name "@" (…
mode-line-positionをすっかり書き換えた。 (line-number-mode 0) (column-number-mode 0) (size-indication-mode 0) (setq mode-line-position '(:eval (format "L%%l/%d,C%%c" (count-lines (point-max) (point-min)))))
これをDELにバインドする。 なんでこういう設定初めからないのサ。 (defun my-eshell-backward-delete-char () (interactive) (when (< (save-excursion (eshell-bol) (point)) (point)) (backward-delete-char 1)))
見やすさ重視で。 あんまり横に伸ばしたくないから三行。 export PS1="\$(prompt_function)\$ " prompt_function(){ # used by PS1 local lastreturn=$? local pwd=$(echo "${PWD}" | sed -e "s:${HOME}:~:") local date=$(LANG=C date +"%a, %d %b %Y %T %z…
http://d.hatena.ne.jp/sr10/20101208/1291817782 が結構汚かったので書き直した。 変更点は、エラーを別のファイルに吐くようにしたくらい。
2012/3/15 追記 pcmanfmの引数にファイルを渡した方が多分いい。 圧縮ファイルでxarchiverじゃなくてfile-rollerを開きたかった。 /usr/bin/xdg-openを開くと、中身はシェルスクリプトなことが分かる。 gnome, kde, xfce以外では、 $ run-mailcap --action=v…
11/2/8 update 言語を自動判別にして、翻訳する言語を設定できるようにした。 追記 id:moozさんがとっても素敵に書き直してくれました。 すてき! 以下はそれを落ち葉拾いしたもの。
meadowにはfiber.exeが付属する。 これは、ファイルをwindowsの関連付けに従って開くコマンドで、meadowからofficeが起動できたりして割と便利に使える。 が、ntemacsにはそんなものない。 どうにかならんかな、と思ってぐぐると、 startというコマンドを発…
関数をグローバルにしたくない時に。 (let ((fun (lambda (f num &optional result) (if (eq num 0) (or result 1) (funcall f f (- num 1) (* num (or result 1))))))) (funcall fun fun 10)) 3628800 書きながら Y combinatorとかいう概念があるのを知った…
1/5 やっぱ変なことになったのでモードを限定するように おかしなことになったら止める (defvar my-indent-buffer-mode-list '(emacs-lisp-mode)) (defun my-indent-buffer () "" (interactive) (when (memq major-mode my-indent-buffer-mode-list) (indent…