
Ubuntu日本語フォーラム

ログインしていません。
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
こちらがわかりやすいような・・・
https://natural966.wordpress.com/2012/08/19/my-linespacing-plugin-for-gedit-3/
~/.local/share/gedit/pluginsフォルダを作成
pluginsフォルダにlinespacing.plugin、linespacing.pyを置く
geditを再起動
編集メニューを開く
設定メニューを開く
プラグインタブを選択
line-spacingが見つかるので、チェックして使える
使い方
行間+ ctrl+alt+9
行間ー ctrl+alt+8
リセット ctrl+alt+0
違ってたらすみません・・・
以下の部分はよくわかりませんでした。
Notice :
at default, line spacing works for ‘Phisical line’, not ‘Logical line’. to let working for logical line, remark the line which contains ‘pixels_inside_wrap’.
オフライン
やってみました。
一部訂正があります。
linespacing.pluginの「python」を「python3」に書き換えないとプラグインにチェックを入れてもエラーになります。
jin yaugさんの環境が不明なので、だめだったら「3」を追記すればいいかと・・・
オフライン
何度もすみません。
linespacing.pyの一部がおかしいので、気になるなら修正を・・・
現状ではリセットしてもctrl+alt+8で更につまります。
行間が0以上ならつめる設定になってるので・・・
def on_linespacing_action_activate1(self, action, data=None):
view = self.window.get_active_view()
if view:
if view.get_pixels_below_lines() >= 0: ←ーーー「>=から>に変える」もしくは「0から1に変える」
view.set_pixels_below_lines(view.get_pixels_below_lines() - 1)
if view.get_pixels_inside_wrap() >= 0:
view.set_pixels_inside_wrap(view.get_pixels_inside_wrap() - 1)
あとキー設定を変更したければ
self._actions.add_actions([
('LineSpacingAction0', Gtk.STOCK_INFO, "Reset Line spacing",
"<Control><Alt>0", "Reset Line spacing",
self.on_linespacing_action_activate0),
('LineSpacingAction1', Gtk.STOCK_INFO, "Decrease Line spacing",
"<Control><Alt>8", "Decrease Line spacing",
self.on_linespacing_action_activate1),
('LineSpacingAction2', Gtk.STOCK_INFO, "Increase Line spacing",
"<Control><Alt>9", "Increase Line spacing",
self.on_linespacing_action_activate2),
"<Control><Alt>0"他2つの部分を変更すればいいかと思います。
他のキー設定とかぶらないように・・・
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
Jin Yaug による投稿:
>/.local/share/gedit/pluginsフォルダを作成
/.local ではなく、 ~/.local です。
/.local だと、トップ(root)・ディレクトリ直下になってしまいます。
ちなみに、 ~/ は、ユーザのホームディレクトリのことです。
オンライン
私も詳しいわけではないですよ。
GUIでできることは、GUIで済ませます。
~/.local/share/gedit/pluginsフォルダ作成については・・・
初期状態であるのは
~/.local/shareまでです。
そこに新規にgeditフォルダ、その下にpluginsフォルダを作成してください。
ホームフォルダを開いたら、隠しファイルを表示を表示するって項目が探せませんか?
そこを選択すれば、隠しファイル、隠しフォルダが見えますよ。(最初に"."がついてるもの)
「~/」は「/home/ユーザー名/」と同じ意味です。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
まず「~/」は使いませんね。
フォルダ「/home/ユーザー名/.local/share/gedit/plugins」はよろしいでしょうか?
作成後そのpluginsフォルダ上で
$ gedit linespacing.plugin
中身は以下の通り(---から---の間)です。
---
[Plugin]
Loader=python3
Module=linespacing
IAge=3
Name=Line-spacing
Description=Increase or decrease space between lines
Authors=
Copyright=
Website=
---
セーブしたら(もしくはgeditを起動して、コピペしてファイルメニューから名前linespacing.pluginをつけてpluginsフォルダに保存)
$ gedit linespacing.py
中身は以下の通り(---から---の間)です。
---
from gi.repository import GObject, Gtk, Gedit
UI_XML = """<ui>
<menubar name="MenuBar">
<menu name="ToolsMenu" action="Tools">
<placeholder name="ToolsOps_3">
<menuitem name="LineSpacingAction0" action="LineSpacingAction0"/>
<menuitem name="LineSpacingAction1" action="LineSpacingAction1"/>
<menuitem name="LineSpacingAction2" action="LineSpacingAction2"/>
</placeholder>
</menu>
</menubar>
</ui>"""
class LineSpacing(GObject.Object, Gedit.WindowActivatable):
__gtype_name__ = "LineSpacing"
window = GObject.property(type=Gedit.Window)
def __init__(self):
GObject.Object.__init__(self)
def _add_ui(self):
manager = self.window.get_ui_manager()
self._actions = Gtk.ActionGroup("LineSpacingActions")
self._actions.add_actions([
('LineSpacingAction0', Gtk.STOCK_INFO, "Reset Line spacing",
"<Control><Alt>0", "Reset Line spacing",
self.on_linespacing_action_activate0),
('LineSpacingAction1', Gtk.STOCK_INFO, "Decrease Line spacing",
"<Control><Alt>8", "Decrease Line spacing",
self.on_linespacing_action_activate1),
('LineSpacingAction2', Gtk.STOCK_INFO, "Increase Line spacing",
"<Control><Alt>9", "Increase Line spacing",
self.on_linespacing_action_activate2),
])
manager.insert_action_group(self._actions)
self._ui_merge_id = manager.add_ui_from_string(UI_XML)
manager.ensure_update()
def do_activate(self):
self._add_ui()
def do_deactivate(self):
self._remove_ui()
def do_update_state(self):
pass
def on_linespacing_action_activate0(self, action, data=None):
view = self.window.get_active_view()
if view:
view.set_pixels_below_lines(0)
view.set_pixels_inside_wrap(0)
def on_linespacing_action_activate1(self, action, data=None):
view = self.window.get_active_view()
if view:
if view.get_pixels_below_lines() > 0:
view.set_pixels_below_lines(view.get_pixels_below_lines() - 1)
if view.get_pixels_inside_wrap() >= 0:
view.set_pixels_inside_wrap(view.get_pixels_inside_wrap() - 1)
def on_linespacing_action_activate2(self, action, data=None):
view = self.window.get_active_view()
if view:
view.set_pixels_below_lines(view.get_pixels_below_lines() + 1)
view.set_pixels_inside_wrap(view.get_pixels_inside_wrap() + 1)
def _remove_ui(self):
manager = self.window.get_ui_manager()
manager.remove_ui(self._ui_merge_id)
manager.remove_action_group(self._actions)
manager.ensure_update()
---
これをセーブします。
できたらgeditを終了してまた起動させるだけです。
ビルド云々は一切不要です。
linespacing.plugin、linespacing.pyともにただのテキストファイルです。
何かコマンドを実行して生成されるわけではないですよ。
どうでしょうか?
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン