Advertisement
Guest User

Untitled

a guest
Mar 25th, 2012
134
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.02 KB | None | 0 0
  1. ;;clipboad と kill リング を ちらっと見る
  2.  
  3. (defun view-clipboard-mini ()
  4. (interactive)
  5. (popup-string (concat "view clipboard:\n"(get-clipboard-data)) (point)))
  6.  
  7. (defun view-board-mini ()
  8. (interactive)
  9. (popup-string (concat "view [ clipboard ]:\n" (get-clipboard-data) "\n[ kill-ring ]:\n" (nth 0 (nth (1- (length *kill-ring*)) *kill-ring*))) (point)))
  10.  
  11.  
  12. ;;リージョン範囲をハイライト
  13. ;;しょぼしょぼすくりぷと xyzzy編
  14. ;;http://www2.ocn.ne.jp/~cheerful/script/xyzzy/mode/regionhilight.html
  15.  
  16. (load-library "region-hilight.l")
  17.  
  18.  
  19.  
  20. ;;ini-mode
  21.  
  22. (export 'ed::ini-mode "ed")
  23. (autoload 'ini-mode "ini-mode" t)
  24. (pushnew '("\\.ini$" . ini-mode) *auto-mode-alist* :test 'equal)
  25.  
  26.  
  27. ;;bat-mode
  28.  
  29. (export 'ed::bat-mode "ed")
  30. (autoload 'bat-mode "bat-mode" t)
  31. (pushnew '("\\.bat$" . bat-mode) *auto-mode-alist* :test 'equal)
  32.  
  33.  
  34. ;;awk-mode
  35. ; ライブラリの読み込み
  36. (load-library "awk-mode")
  37.  
  38. ; Mode定義 - 拡張子に応じた自動モードセットの追加
  39. (push '("\\.awk$" . awk-mode) *auto-mode-alist*)
  40.  
  41.  
  42. ;;statusバーにカーソル位置の文字コードを表示する
  43. ;;(setq *status-bar-format* "%t%c%u")
  44.  
  45.  
  46. ;;変更された行の行番号に色を付けます
  47. ;------------------------------
  48. ; 編集された行にマークを付ける
  49. ;------------------------------
  50.  
  51. ; text-attribute のセット。色等は適当に。
  52. (defun set-modified-line-mark (pos line)
  53. (let ((prefix (code-char (+ (rem line 10) (char-code #\0)))))
  54. (set-text-attribute pos pos 'modified-line
  55. :foreground 0 :background 2
  56. :prefix prefix :extend t)))
  57. ; フック関数。
  58. (defun buffer-modified-hook (buffer operation from to undo-p)
  59. (let ((pos from))
  60. (save-excursion
  61. (goto-char pos)
  62. (while (<= pos to)
  63. (progn
  64. (goto-bol)
  65. (set-modified-line-mark (point) (current-line-number))
  66. (if (not (next-line))
  67. (return))
  68. (setq pos (point))
  69. )))))
  70.  
  71. ; フックの登録。
  72. (add-hook 'post-buffer-modified-hook 'buffer-modified-hook)
  73.  
  74. ; 編集行を前方に検索する。
  75. (defun search-modified-line-forward ()
  76. (interactive)
  77. (goto-char (or (find-text-attribute
  78. 'modified-line
  79. :start (+ 1 (save-excursion (goto-eol) (point))))
  80. (plain-error "編集された行はありません"))))
  81.  
  82. ; 編集行を後方に検索する。
  83. (defun search-modified-line-backward ()
  84. (interactive)
  85. (goto-char (or (find-text-attribute
  86. 'modified-line
  87. :end (- (save-excursion (goto-bol) (point)) 1)
  88. :from-end t)
  89. (plain-error "編集された行はありません"))))
  90.  
  91. ; 編集行マークの削除
  92. (defun delete-modified-line-mark ()
  93. (interactive)
  94. (delete-text-attributes 'modified-line))
  95.  
  96. (global-set-key #\M-Down 'search-modified-line-forward)
  97. (global-set-key #\M-Up 'search-modified-line-backward)
  98.  
  99. (add-hook '*find-file-hooks*
  100. #'(lambda ()
  101. (enable-post-buffer-modified-hook t)))
  102.  
  103. (add-hook '*after-save-buffer-hook*
  104. #'(lambda ()
  105. (delete-modified-line-mark)))
  106.  
  107.  
  108. ;---------------------------------------
  109. ;; ahk-mode.l
  110. ;;---------------------------------------
  111. (require "ahk-mode")
  112. (push '("\\.ahk$" . ahk-mode) *auto-mode-alist*)
  113. (push '("autohotkey\\.ini$" . ahk-mode) *auto-mode-alist*)
  114.  
  115.  
  116. ;xml-mode
  117. ;http://chez-sugi.net/xyzzy/xml-mode.html
  118. (require "xml/xml-mode")
  119. (use-package 'xml)
  120.  
  121.  
  122.  
  123. ;;----------------------------------------
  124. ;;custom key bind
  125. ;;
  126. ;;Emacs風キーバインドに近づける http://goo.gl/3W171
  127. ;;emacs#7 ~置換と矩形処理~ http://goo.gl/ig459
  128. ;;----------------------------------------
  129.  
  130. ;emacs風矩形処理
  131.  
  132. (global-set-key '(#\C-x #\r #\d) 'delete-rectangle)
  133. (global-set-key '(#\C-x #\r #\k) 'kill-rectangle)
  134. (global-set-key '(#\C-x #\r #\o) 'open-rectangle)
  135. (global-set-key '(#\C-x #\r #\t) 'string-rectangle)
  136. (global-set-key '(#\C-x #\r #\y) 'yank-rectangle)
  137. (global-set-key '(#\C-x #\r #\w) 'copy-rectangle)
  138.  
  139. ;emacs風redo
  140. (global-set-key #\C-/ 'redo)
  141.  
  142.  
  143. ;;; -*- Mode: Lisp; Last modified: <2007/12/31 01:13:20> -*-
  144. ;;;
  145. ;;; This file is not part of xyzzy.
  146. ;;;
  147. ;;; clipselect.l --- クリップボード履歴から選択して貼り付け
  148. ;;;
  149. ;;; by HIE Masahiro <madoinu@ybb.ne.jp>
  150.  
  151. (require "clipselect")
  152. ;keybind
  153. (define-key ctl-x-map #\Insert 'clipselect-paste)
  154. (define-key ctl-x-map #\y 'clipselect-yank)
  155. (define-key ctl-x-map #\F9 'clipselect-yank-selection)
  156.  
  157.  
  158. ;------------------------------------------------------------------------------
  159. ;;; -*- Mode: Lisp; Package: EDITOR -*-
  160. ;;;
  161. ;;; This file is not part of xyzzy.
  162. ;;;
  163. ; $Id: migemo.l,v 1.3 2005/11/27 15:06:44 torihat Exp $
  164. ;
  165. ; migemo.l
  166. ;
  167. ; by Masashi Hattori
  168. ;
  169. ; ■ migemo.l とは?
  170. ;
  171. ; 村岡さんの"Migemo DLL"を使ってローマ字のままインクリメンタルサー
  172. ; チできるようにするものです。
  173. ;
  174. ; Migemoについての詳細は、以下のサイトをご覧下さい。
  175. ;
  176. ; Migemo 本家
  177. ; http://migemo.namazu.org/
  178. ;
  179. ; Migemo DLL(村岡さん)
  180. ; http://www.kaoriya.net/
  181.  
  182. (require "migemo")
  183. ;------------------------------------------------------------------------------
  184.  
  185. ;ctrl+upで前後行入れ替え
  186. (global-set-key #\C-Up 'transpose-lines)
  187.  
  188.  
  189. ;------------------------------------------------------------------------------
  190. ;;; xyzzy版の説明
  191. ;;;
  192. ;;; py-mode --- 言語Python用メジャーモード
  193. ;;;
  194. ;;; by Deecay
  195. ;;; http://www.geocities.co.jp/Milano-Cat/2067/xyzzy.html
  196. ;#|
  197. ;●概要
  198. ;
  199. ; Furukawa Toru氏が作成したpy-modeにいくつかの機能(shift-regionなど)
  200. ;を追加してみたものをFurukawa氏のサイトで公開してもらっていましたが、
  201. ;このたび本格的にTim Peters, Barry Warsawらによるemacs用Python-mode.elの
  202. ;移植にチャレンジしてみました。作成に当たっては以下のソフトウェアを参考に
  203. ;しました。
  204. ; python-mode.el by Tim Peters
  205. ; py-mode.l by Toru Furukawa氏
  206. ; emacs.l by manabu@chaos.club.ne.jp
  207. ; shell3.l by Hattori Masashi
  208. ; comint.el
  209. ;
  210. ;
  211. ;●注意事項
  212. ;
  213. ; pdb関係、Jython関連はまだ移植が終わっていません。
  214. ;時間があればチャレンジしてみたいと思います。
  215. ;
  216. ;●インストール
  217. ; 0. netinstallerを利用した場合は特に設定は必要ありません。
  218. ;   動作に不満がある場合はこのソースの設定用変数部分を参照してください
  219. ;
  220. ; 1. py-mode.lをsite-lispフォルダにコピー。
  221. ; 2. バイトコンパイル(byte-compile-file)して、.xyzzyかsite-init.lに
  222. ;
  223. ; (load-library "py-mode")
  224. ; (push '("\\.py$" . py-mode) *auto-mode-alist*)
  225. ;
  226. ; と書いて、必要に応じてダンプし直せば大丈夫です。
  227. ;
  228. ; x. 文字コードについて
  229. ; PYTHONPATH\Lib\site-packages\sitecustomize.py(なければ作る)に
  230. ;
  231. ;import sys
  232. ;from codecs import getwriter
  233. ;sys.setdefaultencoding('shift_jis')
  234. ;sys.stdout = getwriter('shift_jis')(sys.stdout)
  235. ;
  236. ; と書くと日本語のエンコード関係がマシになるかもしれません。
  237. ;
  238. ;
  239. ;
  240. ;●使い方
  241. ;
  242. ; M-x py-mode バッファをpy-modeにする
  243. ;
  244. ; C-c m (py-describe-mode) py-modeの日本語ヘルプ
  245.  
  246. (load-library "py-mode")
  247. (push '("\\.py$" . py-mode) *auto-mode-alist*)
  248. ;------------------------------------------------------------------------------
  249.  
  250. ;vbsファイルを自動でbasic-modeで読み込む
  251. (pushnew '("\\.vbs" . basic-mode) *auto-mode-alist* :test 'equal)
  252.  
  253.  
  254. ;-------------------------------------------------------------------------------
  255. ;print-mode-line mode(モードライン拡張minor-mode)
  256. ;モードライン(バッファーの下にあるバー)に任意の文字を表示させるマイナーモードです。
  257. ;例として、文字数、や行数の位置が表示できます。
  258. ; http://www2.ocn.ne.jp/~cheerful/script/xyzzy/mode/printmodelinemode.html
  259.  
  260. (load-library "print-mode-line-mode")
  261. ;カーソル位置%と文字数表示
  262. (setq mode-line-format "[%i] %* %b (%M) |%/%, %n | [%k:%l] %P %f")
  263. (print-mode-line-mode)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement