jEdit Mac OS键盘行为

时间:2010-02-19 16:10:59

标签: macos keyboard jedit

有没有让jEdits键盘控件的行为与原生Mac OS应用程序的行为相同?

通过表现我的意思是命令+左移动插入符号到行的开头,alt + left移动到当前单词的开头等。

3 个答案:

答案 0 :(得分:10)

答案 1 :(得分:3)

不幸的是,Brian的调查结果与QWERTZ键盘不相符:它禁止输入像管道,花括号或任何使用ALT键作为修饰符的字符的可能性。

根据startup.bsh中的评论:

/*{{{ Remapping modifier keys part II */

/* Note if you chose to make use of the M+ (option key) prefix on MacOS, you
 * will need to disable a little piece of code: */
//Debug.ALT_KEY_PRESSED_DISABLED = false;
/* Otherwise M+ will be ignored for the purposes of keyboard shortcuts. */

/* But if you enable this, you might find that Option+8 for example invokes your
 * macro but also inserts a bulletpoint, as per standard Macintosh keyboard
 * behavior. To disable the Option key for inserting special high ASCII
 * characters, uncomment this. Note that it has wider implications, notably
 * DROVAK keyboard shortcuts will be mapped as if the keyboard was QWERTY. */
//Debug.ALTERNATIVE_DISPATCHER = false;

/*}}}*/

只有取消注释Debug.ALT_KEY_PRESSED_DISABLED应该可以解决这个问题,但是这里[1]却没有 - 我可以 使用ALT作为快捷键的修饰符,作为输入字符的修饰符..前一部分还涉及修饰符的映射:

/*{{{ Remapping modifier keys part I */

/* The below is the default, swap the items around to
 * change meaning of C+, A+, M+, S+.
 */
//KeyEventTranslator.setModifierMapping(InputEvent.CTRL_MASK,
//  InputEvent.ALT_MASK, InputEvent.META_MASK,
//  InputEvent.SHIFT_MASK);

/* ... and this the MacOS default: */
//KeyEventTranslator.setModifierMapping(InputEvent.META_MASK,  /* == C+ */
//  InputEvent.CTRL_MASK,  /* == A+ */
//  InputEvent.ALT_MASK,   /* == M+ */
//  InputEvent.SHIFT_MASK  /* == S+ */);

/*}}}*/

但无论我尝试过什么设置组合,我都无法使用两个选项(ALT作为快捷键 textinput的修饰符)来实现设置。

所以:任何提示/修复都会受到高度赞赏。 ; - )

[1]这里的意思是:jEdit 4.3.2 @ OSX 10.5.8(Java 1.5.0_30)和QWERTZ(德语)键盘

答案 2 :(得分:1)

适用于我的解决方案:

创建一些宏,将所需的特殊alt字符插入textArea(每个字符一个宏)。

然后你可以更改设置以启用jedit的alt键(我只启用了两个属性中的第一个)。

之后,您可以为您录制的宏分配alt快捷键,使特殊字符与之前的短片相同。

之后,您可以更改文本导航的快捷方式设置以匹配mac标准,您仍然可以通过定义的宏快捷方式获得特殊字符。