Topic: How to enable the language Input Indicator for other input languages? SOLVED :)  (Read 733 times)

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Hi slore,

better news :
Winlangdb.dll is a special (specific) case with TR , language shows correct without Winlangdb.dll  :thumbsup:
I will dig more TR later ...
(
but the theory is correct, TR-Format and TR-Keyboard cause windows confuse and fallback to Winlangdb.dll   :wink:
 When I do not add TR-Format settings, works fine without Winlangdb.dll
   dig more TR later on my side ...
)

From my side  all Hebrew keyboard cases by ericg solved (+bit40)
ila_rendered
Azin-Wimbuilder with enu source should provide  Hebrew keyboard like on picture when ericgl build on host  :thumbsup:

The picture above is with Disabled IME patch  :thumbsup:
As I wrote before your IME patch is all correct  :thumbsup:
(even enabled It is correct IME patch following source do not process,
 I am sure this is the way "Extended" language users go which you know better.  :wink: :thumbsup: )


*
What I wrote with "Ime indicator" before, I should call it "Language Bar" which works fine with Disabled IME patch.

(
ps: on one of my previous reply for your head start,
 I mean differences between "Western Language Group", "Advanced Basic" "Complex" "Extended" languages
  You already know Extended  :thumbsup: which I do not practice.
)


*
The only left thing behind,
 Where this "Language Bar" comes from with Wimbuilder ????
 I could not find any "Language Bar" Patch or Patch settings at Customize ????

Goodnight
:zzz:
:turtle:

James

  • Grand Chef
  • *****
  • Location: USA
  • Date Registered: Dec 2017
  • Posts: 2272
Lance you testing with Full Software Hive ??

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Lance you testing with Full Software Hive ??
No
Wimbuilder default setting is not Full Software Hive,
See
Wimbuilder-Customize-Configures\Build patch

I test with Wimbuilder default settings written on previous replies.

:turtle:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
+
and the picture comes from Azin-Wimbuilder (with Wimbuilder default setting) by only changing the keyboard setting to Hebrew.
Azin\Basic\Localization\"Local Settings" Plugin

ericgl do not need to change "Local Settings" Plugin but you need to change since you are not a Hebrew user with host Hebrew settings.  :wink:

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
I think there is aother question --- How did you add the keyboard layout?

I added by wpeutil.exe, every keyboard layout name are right without Winlangdb.dll.

ila_rendered
ila_rendered

For Turkish, you can add it by this:
wpeutil SetKeyboardLayout 041f:0000041f

« Last Edit: May 24, 2020, 01:48:58 AM by slore »

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
The only question remains, where does Wimbuilder "Ime Indicator" comes from, so you can add Winlangdb.dll to that place.

*
The only left thing behind,
 Where this "Language Bar" comes from with Wimbuilder ????
 I could not find any "Language Bar" Patch or Patch settings at Customize ????

ctfmon.exe,MsCtfMonitor.dll are added in Explorer patch in WimBuilder.
Code: [Select]
Slore@SLORE-PC MINGW64 /z/WimBuilder2/Projects (master)
$ git grep ctfmon.exe
WIN10XPE/01-Components/00-Shell/Explorer/submain.bat:ctfmon.exe,desk.cpl,edputil.dll

you can also search in last_wimbuilder.log:

Code: [Select]
[MACRO]AddFiles Explorer\submain.bat :end_files
...
\Windows\System32\ctfmon.exe
\Windows\System32\en-US\ctfmon.exe.mui
\Windows\System32\MsCtfMonitor.dll
\Windows\System32\en-US\MsCtfMonitor.dll.mui
...

"Language Bar" is part of Shell, so if the wlangdb.dll is required, I consider to add the file in Explorer\submain.bat.
« Last Edit: May 24, 2020, 02:11:40 AM by slore »

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664

About the AV check,

NOTICE: If NTBOOTAUTOFIX, SetupXP, UEfix cause AV alarm, just delete them.

On my side, even JFX's WinNTSetup4.rar casues AV alarm.

Most of them is 3rd part applications(if worried about this, download from offical site again, or just delete them),
for the system components/features it shouldn't causes that, because them just file list in *.script or *.bat.

James

  • Grand Chef
  • *****
  • Location: USA
  • Date Registered: Dec 2017
  • Posts: 2272
//- Use the Desktop Language Bar when it's available
RegWrite,HKLM,0x3,"Tmp_Default\Control Panel\Desktop",UserPreferencesMask,9e,1e,06,80,12,01,00,00

//- Floating on Desktop
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,ShowStatus,0
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,Transparency,255
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,Label,1
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,ExtraIconsOnMinimized,0

//- Docked on Taskbar
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,ShowStatus,4

//- Hidden
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,ShowStatus,3

//- Show Language bar transparent when inactive
RegWrite,HKLM,0x4,Tmp_Default\Software\Microsoft\CTF\LangBar,Transparency,64

//- in pecmd.ini
EXEC %WinDir%\System32\ctfmon.exe
« Last Edit: May 24, 2020, 02:37:34 AM by James »

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
Problem solved!!  :clap: :clap: :clap:
As you can see in the attached screenshot, the Input Indicator finally appeared.

It seems that the following line in PECMD.ini is commented-out (by default), in Win10XPE project:
Code: [Select]
//EXEC %WinDir%\System32\ctfmon.exe
After I uncommented it, so that ctfmon.exe gets executed, the Input Indicator appeared.
Thanks James, Lancelot and slore for pointing me in the right direction.
« Last Edit: May 24, 2020, 05:58:59 AM by ericgl »

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, ericgl

Good to know you got what you want.

For WimBuilder, if you use Windows Explorer the ctfmon.exe will be executed.

Win10XPE project in somecase use TextReplace to update the pecmd.ini, so in WimBuilder, if you add another langauge layout,
It will show auto.

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
slore,

Where in WimBuilder2 do I add another input language?
I don't see this option...(see attached screenshot)

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
Hi, ericgl

For Asia people, they need enable IME to get that, I don't others need that before.

So there is no option for that, but you can just add one line batch code to add another input language.

Z:\WimBuilder2\Projects\WIN10XPE\_CustomFiles_\PEMaterial\Autoruns\OSInit\AddKBLayout.bat (any file name as you want)
Quote
wpeutil SetKeyboardLayout 40d:40d
rem set default keyboardlayout to ENG
rem wpeutil SetKeyboardLayout 409:409
« Last Edit: May 24, 2020, 08:06:16 AM by slore »

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
@James

//- Use the Desktop Language Bar when it's available
RegWrite,HKLM,0x3,"Tmp_Default\Control Panel\Desktop",UserPreferencesMask,9e,1e,06,80,12,01,00,00
Wrong info, It include setting to show Language Bar with classic style (+ which avoid wlangdb.dll requirement if format wrongly written)
2nd picture (bit 40=1) at Lancelot reply 40 http://theoven.org/index.php?topic=1544.msg37457#msg37457
Also missing info, along with many other (27 known) settings
 such wrong definations on internet cause misunderstanding of new users .... (ericgl ....)

Well I prefer bit 40=0 (default) with Azin-Wimbuilder like on slore wimbuilder pictures slore reply 24 http://theoven.org/index.php?topic=3137.msg37566#msg37566

More info available at "Tweak UserPreferencesMask" Plugin
Code: [Select]
Call,DownloadX,"%BaseDir%\Projects\Yomi\ComponentsY\Tweaks\Tweak UserPreferencesMask.Script"
See: Downloading Plugins with a CodeBox

Sure hope you all can figure this all out this discussion.. So eventually someone can actually try to follow some development process...
good to see you follow some development process, peh.

well I will not quote replies meaninglessly anyway, peh.

and write my full name: Lancelot like all others do.  :cool:

:turtle:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
I added by wpeutil.exe, every keyboard layout name are right without Winlangdb.dll.
Your pictures with Enu source,
Try with Korean source, I believe the definition on pictures will be different.  :wink:

As I wrote before It is about a tr setting I used for Format (// turkish by Max_Real Qnx) that cause fallback to Winlangdb.dll
I will fix that.

"Language Bar" is part of Shell, so if the wlangdb.dll is required, I consider to add the file in Explorer\submain.bat.

I feel (not tested) wlangdb.dll already registered and info available at the registry.

wlangdb.dll not required, but yes it is part of "Language Bar"
If you like, only put a comment to Explorer\submain.bat (rem wlangdb.dll info already available at winre registry so not required)

ps: not checked boot.wim registry  :wink: simple test: build wimbuilder with enu boot.wim source, see language bar show correct, let us know the result.

For Asia people, they need enable IME to get that, I don't others need that before.
As written before,
Others do not need, they only ask for the Language bar (without other IME things as written before)

eg.
If ericgl use Azin-Wimbuilder there will not be any ericgl related topic posts around, Language bar with Hebrew (and default bit40=0) already available out of box with Azin-Wimbuilder

I think there is aother question --- How did you add the keyboard layout?
by using registry  :thumbsup: via Plugin  :thumbsup:

even before Azin I am doing the same, even at BartPE times.
When testing wimbuilder I use the same, but since I use a single tr keyboard I do not care much about the language bar before.

I wrote in very very detail before, keyboard changers are not new to me, I hope wpeutil do a better job when changing keyboard settings !

Like I advise you, I will also create a plugin to change/add keyboard with wpeutil much later ...
 to me with being single tr keyboard user  of "Advanced Basic" language family,
   The best way to test and learn is the end-user response after such a plugin/patch available.

For Turkish, you can add it by this:
wpeutil SetKeyboardLayout 041f:0000041f
Thanks.

It will be nice if you create a patch with UI giving option(s) to change Keyboard with wpeutil eg. "Keyboard wpeutil patch"
(I will create eg. "Keyboard wpeutil Plugin" , Just another todo  :lol: )

and a question --->

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
"Language Bar" is part of Shell, so if the wlangdb.dll is required, I consider to add the file in Explorer\submain.bat.

does Wimbuilder start ctfmon with a patch (with a line at startup eg.(Start "ctfmon" ctfmon.exe) ) ?

or It is started by Explorer shell automatically when there is more than 1 keyboard?

or .... ?

:turtle:

James

  • Grand Chef
  • *****
  • Location: USA
  • Date Registered: Dec 2017
  • Posts: 2272
Quote
It seems that the following line in PECMD.ini is commented-out (by default), in Win10XPE project:

Code: [Select]
// Enable ctfmon: Alternative User Input Text Input Processor (TIP) (Uncommented for Chinese and Korean windows source). Not to be changed, Replace //EXEC by //=EXEC
//EXEC %WinDir%\System32\ctfmon.exe
After I uncommented it, so that ctfmon.exe gets executed, the Input Indicator appeared.
Since it seems to be required for other Secondary languages as well - then is should be set to auto run at startup when using a second language

James

  • Grand Chef
  • *****
  • Location: USA
  • Date Registered: Dec 2017
  • Posts: 2272
I will also clarify that the Win10XPE Project (by ChrisR) and the WimBuilder2 Project (by Slore) does not include a /Tweak/UserPreferencesMask
What is being referenced in regards to /Tweak/UserPreferencesMask is included in the AZIN Project.. The AZIN Project can be downloaded as a separate Project..

slore

  • Moderator, WimBuilder
  • Sr. Chef
  • *****
  • Date Registered: Jun 2016
  • Posts: 664
does Wimbuilder start ctfmon with a patch (with a line at startup eg.(Start "ctfmon" ctfmon.exe) ) ?
or It is started by Explorer shell automatically when there is more than 1 keyboard?
or .... ?

if there is ctfmon.exe, it is started by PELoader.
(Well, Better to add a new StartCtfmon.bat in PEMaterial\Autoruns\BeforeShell\ than three copies.)

‪Z:\WimBuilder2\Projects\WIN10XPE\_CustomFiles_\PEMaterial\Pecmd.lua
Code: [Select]
local function LoadShell()
  set_progress(t('load shell ...'))
  exec('PECMD.EXE EXEC -su ctfmon.exe')

‪Z:\WimBuilder2\Projects\WIN10XPE\_CustomFiles_\PEMaterial\Pecmd.ini
Code: [Select]
_SUB LoadShell
IFEX %WinDir%\System32\ctfmon.exe, EXEC PECMD.exe EXEC -su %WinDir%\System32\ctfmon.exe
EXEC =!"X:\PEMaterial\Autoruns\PEStartupMain.bat" BeforeShell

‪Z:\WimBuilder2\Projects\WIN10XPE\_CustomFiles_\PEMaterial\startnet.cmd
Code: [Select]
:PreShell
if exist %SystemRoot%\System32\IME_Cmd.cmd (
    call %SystemRoot%\System32\IME_Cmd.cmd
)

ericgl

  • Jr. Chef
  • **
  • Date Registered: Dec 2015
  • Posts: 71
Sounds to me like a new version of WimBuilder2 is coming... :wink:

Lancelot

  • Moderator, Gena Baker
  • Grand Chef
  • *****
  • Date Registered: Sep 2010
  • Posts: 10350
Since it seems to be required for other Secondary languages as well - then is should be set to auto run at startup when using a second language
should be not fully correct, people can like other indicators for various reasons (National Flags, low memory usage (slim) etc.)

and your line on your post is not valid for all projects only valid if one use pecmd, you are aware you are out of your asylum !
Wimbuilder start ctfmon via Pecmd.lua using pecmd.exe externally as slore wrote,
LiveSystemPro do not use pecmd at all

--->

 

Powered by EzPortal