ImTip 是一款小巧的 Windows 工具,用来在有输入光标的地方,显示输入法状态。@Appinn
前几天推荐了一个 Mac 端的小工具:Input Source Pro – 根据不同应用、不同网站自动切换输入法,并提示当前输入法状态[macOS]( https://www.appinn.com/input-source-pro/ ),很多人表示喜欢。
今天这个小工具,来自发现频道,开发者 @jacen 同学的推荐:https://meta.appinn.net/t/topic/32930
ImTip:通用输入法提示工具
这是一个仅能现实输入法状态的工具,仅 660 KB,单文件绿色软件。无任何外部依赖,兼容 XP,Vista,Win7,Win8,Win10,Win11 …… 等所有流行桌面操作系统。
开发者首先分享了远离:获取输入法状态的正确方法,支持所有输入法,然后在此基础上开发了 ImTip。
效果演示:
可视化配置提示窗口样式,可导入导出方案:
昨天 @jacen 发布了 ImTip 1.3,已支持几乎所有窗口。有很多同学在发现频道反馈并得到了及时的处理,好赞。
如果你也有类似的需求,可以去试试,碰到问题也可以去反馈。
获取
原文:https://www.appinn.com/imtip-for-windows/
其他在不同软件自动切换输入法的功能,嘻嘻嘻。是不是有点贪心呢?
确实,现在缺一个自动切换的功能
系统有“允许我为每个应用窗口使用不同的输入法”的功能
这个功能和自动切换不是一回事啊,这个更倾向于保持而不是切换,不知道为什么我每次提自动切换都有人提系统自带的这个功能
我需要的是每次我切换窗口或者新开窗口时,输入法的状态都能是固定的,系统自带的功能只是让他保持了之前的状态,而不是固定的某一个状态
如你所愿:https://github.com/flyinclouds/KBLAutoSwitch
这个就可以根据窗口切换输入法:https://github.com/flyinclouds/KBLAutoSwitch
补个抗揍云的:蓝奏云下载: https://wwr.lanzoui.com/b02i9dmsd 密码: fd5v
很棒.解决的只有mac有相关软件的问题.感谢
个人觉得这个要求是合理的,这个想法也非常棒,一点都不贪心。不过这种输入法内部控制的功能由输入法自己来实现体验可能更好一些 —— 建议向输入法作者反馈。ImTip 专注于输入法状态提示,不会干扰或影响输入法状态。
输入法不是自带状态显示吗?
这就好比系统自带记事本,可是我们还是需要各种编辑器。输入法自带的提示通常只有 2 种状态,而且只有切换状态的时候才出来。而 ImTip 在切换输入目标,切换输入法状态的时候都可以提示,仅用两个提示字符就可查看中英、全半角、大小写、中英标点、多语言键盘布局等所有状态。并且可以方便地设置、切换外观样式,显示时间、跟踪检测速度等,并广泛地兼容各种输入法。
好用!经常需要切换语言输入,想要这种功能很久了!
不知是否能在使用不同输入法显示不同关键字的功能?比如使用日语输入法时也会显示“中”,虽然会显示全角符号但是有点难以快速分辨。
还有各种调整UI的功能简直太棒了!
真的挺好用!之前的版本在JetBrains的编辑器里面不能用,更新后就可以使用了!
好用,写代码的时候终于不用来回瞅右下角了。感谢开发者~~
Windows 自带的微软拼音是有浮动中英状态指示的,在设置里面的外观开启,在开始输入和切换状态时会显示几秒钟,好像要启用旧版微软拼音
试了这款了之后,又试了一下mac的input source pro,相较而言,这次windows下的这款更好用
什么时候windows出一个类似keyboardholder的就完美了。
好
赞!谢谢
虽然不能自动切换,好歹能让我第一时间知道现在是什么状态了,赞一下
非常好用,正确此软件呢。
捉虫:分享了远离->原理
卧槽 一直在找这样的软件,没想到真有!
输入文字的时候没有看右下角的习惯,于是总是会输英文/中文输错,发现输入法不对再切换,删除后重输,有这个软件就可以避免这个问题了。
我需要这个工具几年了,终于遇到她了!你说的这个痛苦,我承受好久了。
完全符合需求!!
希望可以提高提示跟随刷新率,光标移动的时候,提示也会跟着动,但是很卡。
或者是直接根据光标位置显示,不再跟随。
感谢反馈,很棒的建议,新版本现在可以自定义跟踪检测速度了,默认值也调快了。
这个好玩,在excel输入公示加文字的时候经常切换输入法,容易迷糊,下来试试看
非常棒,但我有3个语言,除了中文和英文,还有一个西班牙语键盘,目前西语键盘显示的也是英文,希望能看到支持西语的
感谢反馈,目前已经支持多语言键盘了。
棒
设置移动拖杆,希望能直接输入数值,1到两位小数,方便强迫症修改
感谢反馈,目前可以按键盘上的左右方向键微调滑块
太实用太感谢了!
我的方案 (扁平化、对齐、无圆角,字体图标统一大小和圆形外观,字体可按你的喜好修改,可能需要微调大小和边距)
//输入法状态提示
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-1;
border={radius=0;width=0};
offsetX=0;
iconStyle={align=”right”;font={h=-18;name=”FontAwesome”;weight=400};valign=”center”;padding={top=2;right=0;left=0;bottom=0}};
background=-51915;
textRenderingHint=3;
timeout=3;
align=”left”;
textPadding={top=2;right=0;left=0;bottom=0};
tipChars={fullShape=’\uF111′;close=’\uF05E’;symbol=’\uF10C’;en=”EN”;capital=’\uF139′;lang=”CN”;halfShape=’\uF042′};
width=49;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-18;name=”Johnston ITC Pro Medium”;weight=700};
iconColor=-1;
height=22;
offsetY=0;
iconTextRenderingHint=3;
valign=”center”
}/*}}*/)
字体最好还是选择等宽字体,这样好修改位置,切换时候也不会产生便宜
目前用的最终方案
//输入法状态提示
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-1;
border={radius=0;width=0};
offsetX=0;
iconStyle={align=”right”;font={h=-20;name=”FontAwesome”;weight=400};valign=”center”;padding={top=2;right=1;left=0;bottom=0}};
background=-51915;
textRenderingHint=3;
openStyle={[1]={iconColor=-1;background=-51915;border={radius=0;width=0};argbColor=-1};[0]={iconColor=-1;background=-13649954;border={radius=0;width=0};argbColor=-1}};
timeout=3;
align=”left”;
textPadding={top=2;right=0;left=3;bottom=0};
tipChars={fullShape=’\uF111′;close=’\uF05E’;symbol=’\uF10C’;en=”EN”;capital=’\uF139′;lang=”CN”;halfShape=’\uF042′};
width=56;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-20;name=”Victor Mono”;weight=700};
iconColor=-1;
height=26;
offsetY=0;
iconTextRenderingHint=3;
valign=”center”
}/*}}*/)
字体用了 Victor Mono
中文红色,英文蓝色
刷屏见谅
背景 长56宽28,正好两个正方形,看起来对称点
加了点透明
红色中文,紫色英文
全角、半角、中文标点、大写,都是圆形图标
可能自己设计个方形的CN\EN图标,效果会更好
//输入法状态提示
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-1;
border={radius=0;width=0};
offsetX=0;
iconStyle={align=”right”;font={h=-17;name=”FontAwesome”;weight=400};valign=”center”;padding={top=1;right=3;left=0;bottom=0}};
background=-503368395;
textRenderingHint=5;
openStyle={[1]={iconColor=-1;background=-503368395;border={radius=0;width=0};argbColor=-1};[0]={iconColor=-1;background=-513670934;border={radius=0;width=0};argbColor=-1}};
timeout=3;
align=”left”;
textPadding={top=2;right=0;left=4;bottom=0};
tipChars={fullShape=’\uF140′;close=’\uF05E’;symbol=’\uF10C’;en=”EN”;capital=’\uF139′;lang=”CN”;halfShape=’\uF042′};
width=56;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-18;name=”Victor Mono”;weight=700};
iconColor=-1;
height=28;
offsetY=0;
iconTextRenderingHint=3;
valign=”center”
}/*}}*/)
最后一次更新,不刷屏了,这版挺满意的
中英文用小写 c 和 e 表示
因为字符、字体大小问题,不追求大小一致和平衡了,实在调不了
建议安装 Righteous 这个字体
//输入法状态提示
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-1;
border={radius=0;width=0};
offsetX=0;
iconStyle={iconFont={h=-12;name=”FontAwesome”;weight=400;_struct=”int h;int w;int esc;int ori;int weight;BYTE italic;BYTE underline;BYTE strike;BYTE charset;BYTE out;BYTE clip;BYTE quality;BYTE family;WORD name[32]”;charset=1};align=”right”;padding={top=4.3;right=5.5;left=0;bottom=0};font={h=-18;name=”FontAwesome”;weight=400};valign=”center”};
background=-922798795;
textRenderingHint=3;
openStyle={[1]={iconColor=-1;background=-922798795;border={radius=0;width=0};argbColor=-1};[0]={iconColor=-1;background=-933101334;border={radius=0;width=0};argbColor=-1}};
timeout=3;
align=”left”;
textPadding={top=0;right=0;left=0;bottom=3};
tipChars={fullShape=’\uF140′;close=’\uF05E’;symbol=’\uF10C’;en=”e”;capital=’\uF139′;lang=”c”;halfShape=’\uF042′};
width=63;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-40;name=”Righteous”;weight=400};
iconColor=-1;
height=33;
offsetY=0;
iconTextRenderingHint=3;
valign=”center”
}/*}}*/)
感谢您的热心分享,很棒的样式,正是看了您的分享 —— ImTip 添加了自剪贴板导入配置的功能,并且专门针对这个帖子做了优化,这边会将引号替换为非标准半角引号,粘贴时 ImTip 会对这些引号进行还原。另外 TTF 字体其实可以用字体文件提出其中几个字符,体积就会很少,ImTip 的配置文件可以内置字体。
有没有在状态栏显示当前输入法的工具,用来代替搜狗自带的显示,因为搜狗多了个“中/英”图标,总是导致其他图标难以选中。。
avast杀毒报感染,
开源软件没有病毒,这边较少收到误报的反馈,ImTip 更新比较勤,有些杀毒软件遇到新 EXE 可能会误报,可以添加为信任文件,或者过一些时间等误报清除以后再下载,也可以自行在杀毒软件官网提交检测。
@jacen ,报告,不支持手心输入法,不支持手心输入法,不支持手心输入法,我说修改配置怎么没办法生效呢?
@jacen 用手心输入法主要是这个双拼最好用了,请求修复支持。
timrip在autocad 2023 下显示不正确,一直都是显示中文。
报一个使用问题:在使用PotPlayer时同时使用此软件会导致鼠标消失
我用的小鹤音形输入法(由多多输入法生成器生成),获取的中英文状态是错的,十分期待作者能够尽快适配。非常感谢!
好像最新的2.4已经支持小鹤音形了,感谢作者!
现已支持小鹤音形,但有一个很小的问题:小鹤在英文模式下 —— 如果切换全角会返回中文状态码,按 Shift 切换一次中英就会恢复。
搞错了是PotPlayer的问题😂
@jacen 反馈bug,不改也无所谓,能用了算是,非常感谢。。。今天试了最新版本2.4的怪异模式,在手心输入法上可以用了,就是不能对中文状态下的背景进行设置,两者最终完全一样。导入你给的模版也是一样。
20220530
反馈bug,不改也无所谓,能用了算是,非常感谢。。。今天试了最新版本2.4的怪异模式,在手心输入法上可以用了,就是不能对【中文】、【英文】状态下的背景进行设置,两者最终完全一样。导入你给的模版也是一样。
20220530
感谢您的反馈,这确实是 ImTip 的 BUG,下一版( v2.5) 修复,最迟明天发布。
统一回复:感谢大家反馈的宝馈意见, ImTip 正在努力改进中 ……
挺好的,不过有个bug,不得不放弃使用,我这本来有中韩英,打开这软件后,韩文变成了英文,也就是无法输入韩文
喔~打开怪异模式后,解决了这个问题~
ImTip 官网上「支持多语言键盘」的动画里就录屏演示了中、英、韩、日、西班牙正常切换使用的效果,「怪异模式」对韩文键盘是无效的, 「怪异模式」只是一个简单的显示开关,大白话就是: if ( 怪异模式 ) 中文标点状态显示为「中」…… 具体请参考开源代码。
ImTip 的原理只是被动地查询输入法状态,没有改变或切换输入法的功能(楼上几位都说了没这功能),更无法阻止输入韩文,勾不勾选「怪异模式」都不影响韩文输入法 —— 因为源代码里是这样写的 this.quirksMode and (langId == 0x804) ,也就是这个选项对韩文输入法无效。请检查一下您是否勾选了「启用英文键盘」,这当然会多出一个英文键盘呀,英文键盘的作用并不是把输入的韩文变成英文,一般输入法没有这个功能,您需要按 Win + 空格切换一下输入法。
系统tooltip风格
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-16777216;
border={color=-9013642;radius=0;width=1};
offsetX=23;
iconStyle={iconFont={h=-12;name=”FontAwesome”;weight=400;_struct=”int h;int w;int esc;int ori;int weight;BYTE italic;BYTE underline;BYTE strike;BYTE charset;BYTE out;BYTE clip;BYTE quality;BYTE family;WORD name[32]”;charset=1};align=”right”;padding={top=3;right=3;left=0;bottom=0};font={h=-15;name=”imtip”;weight=400};valign=”center”};
background=-1;
textRenderingHint=5;
timeout=1;
align=”left”;
textPadding={top=0;right=0;left=4;bottom=0};
tipChars={fullShape=’\uF111′;symbol=’\uF111′;[1033]=”英”;[2052]=”中”;en=”英”;halfShape=’\uF042′;lang=”中”;capital=’\uF139′;close=’\uE801′};
width=43;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-12;name=”微软雅黑”;weight=400};
interval=50;
iconColor=-16777216;
height=22;
offsetY=0;
iconTextRenderingHint=4;
valign=”center”
}/*}}*/)
tooltip全中文终极版
imeBar.imeSkin(/*ImTipConfig{{*/{
argbColor=-11053225;
border={color=-9013642;radius=0;width=1};
offsetX=23;
iconStyle={iconFont={h=-12;name=”FontAwesome”;weight=400;_struct=”int h;int w;int esc;int ori;int weight;BYTE italic;BYTE underline;BYTE strike;BYTE charset;BYTE out;BYTE clip;BYTE quality;BYTE family;WORD name[32]”;charset=1};align=”right”;padding={top=0;right=4;left=0;bottom=0};valign=”center”;font={h=-12;name=”微软雅黑”;weight=400}};
background=-1;
textRenderingHint=5;
timeout=1;
align=”left”;
textPadding={top=0;right=0;left=4;bottom=0};
tipChars={fullShape=”- 全角”;symbol=”- 全角”;[1033]=”英文”;[2052]=”中文”;close=”- 禁用”;en=”英”;capital=”- 大写”;lang=”中”;halfShape=”- 半角”};
width=73;
editorClasses={EXCEL6=1;AVL_AVView=1;_WwG=1;[“OneNote::DocumentCanvas”]=1;EXCEL7=1;IMTIP_SETTING_FORM=1};
font={h=-12;name=”微软雅黑”;weight=400};
interval=50;
iconColor=-11053225;
height=22;
offsetY=0;
iconTextRenderingHint=5;
valign=”center”
}/*}}*/)
试了一下效果不错,感谢您的热心分享。
好用,希望可以隐藏桌面图标
按住托盘图标 —— 往折叠隐藏区拖一下就隐藏了,之前都没有隐藏过托盘图标吗,操作很简单,网上搜一下有教程。
大神最底下的最新评论反馈功能了,
感觉是qq本身的问题,提示框显示在整个窗口的右下角
感谢反馈,测试了在 QQ 中是正常的,可更新到最新版试试。
希望增加,不同软件自动切换相应输入法的功能
没有64位的么?
2022.6.13,【反馈】,超级热键的大写输入这个功能挺有用的,输入数字转换的大写文字,怎么复制出去呢,能否按enter直接复制呢,
试验了鼠标单击,按enter,好像都没办法复制出来。
可在输入时直接按 Ctrl + $ ,回车或按空格直接输入,一般不用单独复制。如果你按回车没输入,可能是当前没有点中输入框。
还有超级热键这个打勾,能否像【启用微软键盘】【启用英文键盘】那样,在主页面上打勾呢。
感谢反馈,最新版托盘菜单已添加「启用超级热键」。
这个软件一解压缩就报毒,请问大家使用时也报毒吗?
开源软件没有病毒,这边较少收到误报的反馈,ImTip 更新比较勤,有些杀毒软件遇到新 EXE 可能会误报,可以添加为信任文件,或者过一些时间等误报清除以后再下载,也可以自行在杀毒软件官网提交检测。
多谢回复。这个软件更新的的确快,我前几天下载还是2.8呢,现在都到了3.5以上了,新版的在卡巴上已经不报毒了。666
可以适配下Rime的小狼毫输入法吗,识别不到Shift切换状态,一直显示是中文状态。如果Rime有几个输入方案,切换输入方案也无法识别出来。
抱歉 ImTip 不能检测输入法内部切换的是什么码表方案, ImTip 只检测中 / 英,全 / 半角,中 / 英 标点,大小写这些状态的切换,因为这些有规范的通用状态码。但是小狼毫没有响应输入法状态查询,这边无法适配,建议咨询一下该输入法作者。
好的,谢谢
有個可以處理小狼毫的輸入法狀態偵測問題,下面這段ahk腳本,將shift對應成ctrl+space開關輸入法狀態(開:ime_get()=1,關:ime_get()=0),這樣就可以模擬輸入法的中/英狀態了,雖然不是很規範,但起碼是個變通的作法。
#NoEnv ; Recommended for performance and compatibility with future AutoHotkey releases.
; #Warn ; Enable warnings to assist with detecting common errors.
SendMode Input ; Recommended for new scripts due to its superior speed and reliability.
SetWorkingDir %A_ScriptDir% ; Ensures a consistent starting directory.
;~ Shift::
;~ send ^{Space}
;~ return
~Shift::
ToolTip
If (IME_GET()=1)
ToolTip,EN ;shift得反着提示,提示切换后的状态。
else
ToolTip,中
return
~LButton::
If (A_Cursor = “IBeam” ) {
Edit_Mode := 1
} else if(A_Cursor = “Arrow” ) {
Edit_Mode := 0
}
MouseGetPos, , , WhichWindow, WhichControl
WinGetPos,winx,winy,,,%WhichWindow%
ControlGetPos, x, y, w, h, %WhichControl%, ahk_id %WhichWindow%
;~ ToolTip, %WhichControl%`nX%X%`tY%Y%`nW%W%`t%H%
if ( 0 = not_Edit_InFocus())
{
If (IME_GET()=1)
ToolTip,中
else
ToolTip, EN
}
return
~Shift up::
send ^{Space} ;配合rime增加開關輸入法狀態
return
~Lbutton up::
Sleep,1000
ToolTip
return
not_Edit_InFocus(){
Global Edit_Mode
ControlGetFocus theFocus, A ; 取得目前活動窗口 的焦點之控件标识符
return !(inStr(theFocus , “Edit”) or (theFocus = “Scintilla1″) ;把查到是文字編輯卻不含Edit名的theFucus加進來
or (theFocus =”DirectUIHWND1″) or (Edit_Mode = 1))
}
IME_GET(WinTitle=””)
;———————————————————–
; IMEの状態の取得
; 対象: AHK v1.0.34以降
; WinTitle : 対象Window (省略時:アクティブウィンドウ)
; 戻り値 1:ON 0:OFF
;———————————————————–
{
ifEqual WinTitle,, SetEnv,WinTitle,A
WinGet,hWnd,ID,%WinTitle%
DefaultIMEWnd := DllCall(“imm32\ImmGetDefaultIMEWnd”, Uint,hWnd, Uint)
;Message : WM_IME_CONTROL wParam:IMC_GETOPENSTATUS
DetectSave := A_DetectHiddenWindows
DetectHiddenWindows,ON
SendMessage 0x283, 0x005,0,,ahk_id %DefaultIMEWnd%
DetectHiddenWindows,%DetectSave%
Return ErrorLevel
}
如果要实现这效果,在 ImTip 超级热键里添加下面的代码也可以 [“Shift”] = function(){
var o = key.ime.getOpenStatus()
key.ime.setOpenStatus(!o)
}; 不过这样仍然无法获取完整的输入法状态( 全角、半角、中英标点 ),只是中英提示小狼毫已自带了。
更新的好快,下次再更新能否增加下更新的哪些功能?
ImTip 专注输入法提示,功能比较简单,更新内容也不复杂。更新说明在 GitHub 、小众论坛帖子里都有,上面文中就有链接。如果希望更稳定、更准确地识别输入法状态 —— 请直接使用最新版就可以了,ImTip 向下兼容。
好东西,点赞