2016-09-30 9 views
0

私はEMACSでlisp関数を作成する初心者です。 逆単語を大文字にする関数を作りたい。 M-uはフォワードワードのために大文字にしますが、逆方向にしたいです。 また、関数を実行した後、単語の最後にカーソルを置いています。 そして、元の関数ではなく、この関数をM-uにしたいと思います。 Emacs lispで関数を書くべきですか?emacsの後方単語用メイクアップ機能を作成する

ありがとうございました。あなたが機能upcase-wordの詳細情報が必要な場合

+1

「M-M-c」と入力すると、2回のキーストロークでのみ実行されます。 – Juancho

+2

@Juanchoは 'M - ' 'M-u'を意味すると思います。作者は質問で 'M-u'と言いました。おそらく彼らは大文字で大文字にしたいと思っています。 –

答えて

1

前の単語をupcases機能が

(defun upcase-previous-word() 
    (interactive) 
    (upcase-word -1)) 

あり、その後、upcase-wordM-x describe-functionを試してみてください。これは、私は私が複数の単語で動作何もビルトインを見つけることができなかったとして、この機能を提供するために書いたいくつかの機能を持っていること

(global-set-key (kbd "M-u") 'upcase-previous-word) 
+0

ありがとう、これはまさに私が欲しかったものです。 – user2541307

+0

空白になるまで文字を逆順にしたい場合はどうすればよいですか? – fengqi

0

M-uを割り当てます。彼らは有用であることが証明されることがあります。これは言葉の終わりにあなたを置くことはありませんが、その機能を追加すること

(defun my-get-words-left (number-of-words) 
    (save-excursion 
    (backward-word number-of-words) 
    (point))) 

(defun my-reformat-left-uppercase (number-of-words) 
    (interactive "p") 
    (let ((region-end (point)) 
     (region-start (my-get-words-left number-of-words))) 
    (upcase-region region-start region-end))) 

注意があまりにも難しいことではありません。

編集:

(upcase-word n) 

言葉の数だけ後方変換する単語をUPCASEする負の数を与える、ポイントを残す:実際には、今、私はあまりにもそれを行うための組み込みの方法は実際にそこであることを覚えていますどこにあるのか(私の機能のように)。私が気づく前に私が誤ってホイールを再発明して以来、私はそれをぶち壊していません。

関連する問題