Jak wprowadzić znaki specjalne bez klawiatury numerycznej? [duplikować]

22

Jak mogę wpisać znaki specjalne ( Alt+0 ???) w systemie Windows na laptopie bez jakiegokolwiek rodzaju klawiatury numerycznej (nawet nie jeden dostęp przez FN)?

W tej chwili używam Charmap NT 4 (XP jest do bani), ale czy ktoś wie o bardziej skuteczny sposób?

kinokijuf
źródło
Używasz Windows XP?
iglvzx
@kinokijuf Dla mnie wybrałeś dobry sposób. znajdź i 1 kliknij zamiast pisać 4 rzeczy. Co jeszcze może być? Zmiana mapowania lub tworzenie krótkich spodenek dla niektórych specjalnych charachterów, których używasz. za pomocą międzynarodowej klawiatury lub super specjalnego OnScreenKeyboard, który jest lepszy niż charmap. Posiadanie dużego schowka całych „słów” do wklejenia bez konieczności ponownego wpisywania. Co według ciebie byłoby lepsze? Co powiesz na klawisze, które działają jak SMS-y na telefonie? przytrzymać je, a oni przechodzą na akcentowaną wersję?
Psycogeek
@Psycogeek: Ale jestem bardziej klawiszowcem.
kinokijuf
ergonis.com/products/popcharx/features.html#Anchor-SearchField ?? jest jeden pomysł programisty na prostsze.
Psycogeek
@Psycogeek: co sprawiło, że pomyślałeś, że używam OSX?
kinokijuf

Odpowiedzi:

11

Można to osiągnąć za pomocą skryptu AutoHotkey .

Scenariusz

<!1::Numpad1
<!2::Numpad2
<!3::Numpad3
<!4::Numpad4
<!5::Numpad5
<!6::Numpad6
<!7::Numpad7
<!8::Numpad8
<!9::Numpad9
<!0::Numpad0
<!+::NumpadAdd

Jak to działa

Linia <!1::Numpad1symuluje naciśnięcie klawisza 1na klawiaturze numerycznej po naciśnięciu kombinacji klawiszy po lewej stronie ::.

Tutaj <!reprezentuje lewy Altklawisz i 1klucz 1.

W wyniku naciśnięcia można użyć „zwykłego”, tak jakby były na klawiaturze numerycznej.

Uwaga:

  • Jeśli twoje klawiatury mają dwa Altklucze (zamiast AltGrklucza), możesz sprawić, aby działało to również z odpowiednim Altkluczem. Wystarczy usunąć wszystkie <postacie.

  • Linia <!+::NumpadAddjest potrzebna tylko wtedy, gdy chcesz wpisać znaki Unicode za pomocą kodów szesnastkowych .

Jak używać

  1. Pobierz i zainstaluj najnowszą wersję AutoHotkey.

  2. Zapisz powyższy skrypt jako numpad.ahk, używając ulubionego edytora tekstu.

  3. Kliknij dwukrotnie plik, aby uruchomić skrypt.

  4. Jeśli chcesz, skopiuj skrypt (lub link do niego) w Startupfolderze.

Dennis
źródło
Słodkie! Starałem się wymienić <!z <^>!korzystania AltGr zamiast AltLeft ale to nie będzie działać. Masz pomysł, dlaczego?
CAFxX,
@CAFxX: To działa w miarę mapowania 1do Num1idzie. Problem polega na tym, że nadal naciskasz AltGrklawisz, a nie Altsam (co też nie działałoby z prawdziwym NumPadem). Może być na to sposób, ale nie widzę tego. Możesz opublikować nowe pytanie.
Dennis,
2

Wypróbowałem edytor IME Unicode i działa. Teraz muszę pamiętać wszystkie punkty kodowe.


Unicode IME dla Windows XP

Musisz otworzyć odpowiednią część Panelu sterowania, w WIn-7 jest to coś w rodzaju

  • Otwórz Panel sterowania
  • Wybierać Region and Language
  • Wybierz Keyboards and Languages,
  • Kliknij Change Keyboards
  • Wybierz Keyboard

Strona z linkami (z 2005 r.) Opisuje (prawdopodobnie dla XP)

  • otwarty Add Input Language
  • Wybierz Input Language=Chinese (Taiwan)
  • Wybierz Keyboard Layout/IME=Chinese (Traditional) - Unicode

(Szczegóły oczywiście różnią się w zależności od wersji systemu Windows)

Połączona strona jest kontynuowana

Prosty w użyciu - po prostu przełącz się na niego i zacznij wpisywać liczby szesnastkowe w dowolnej aplikacji ....
a następnie, gdy wpiszesz pełny punkt kodu Unicode, znak zostanie zatwierdzony automatycznie!

Unicode IME dla Windows Vista i Windows 7

Oficjalny edytor Microsoft „Unicode IME” opisany powyżej został usunięty z systemu Vista i nie jest obecny w systemie Windows 7.

Blog MSDN zawiera instrukcje dotyczące dodawania edytora IME w Unicode - ale wydaje się, że w tym czasie było to w toku.

Zainstalowałem ten edytor IME Unicode pod Windows-7 64-bit i działa dobrze.

Aby zainstalować edytor IME, musisz

  • skopiuj plik tekstowy definiujący edytor IME do, \Program Files\Windows NT\TableTextServicea następnie
  • otwórz wiersz polecenia z podwyższonymi uprawnieniami,
  • cd do powyższego katalogu i
  • rodzaj rundll32 TableTextService.dll RegisterProfile TableTextServiceUnicode.txt
  • klikając OK w oknie dialogowym potwierdzenia.
  • Następnie możesz postępować zgodnie z instrukcjami na górze tej odpowiedzi, aby włączyć ten edytor IME.

Korzystanie z edytora IME Unicode

Naciśnij Left Alt+, Shiftaby przełączyć na Unicode IME (lub ponownie). Kształt kursora zmieni się na znak podkreślenia, a ikona klawiatury w obszarze powiadomień systemowych odpowiednio się zmieni. Jeśli następnie wpiszesz cztery cyfry szesnastkowe w Notatniku (lub innej aplikacji?), Wstawiony zostanie znak Unicode dla tego punktu kodowego Unicode.

Definicja IME

Poniżej znajduje się początek i koniec definicji pliku tekstowego IME. Prawa autorskie / licencja oryginału nie są jasne, ale wydaje się, że ma być swobodnie dostępne.

[System]
LangId = LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
GuidProfile={ECD4D0E2-BC06-4726-AFB4-5EB43538B683}
Description="Unicode IME"
Display Description="Unicode IME"

[Configuration]
CandidateList.Phrase.HideWindow=1
CandidateList.Text.HideWindow=1
ReadingWindow.HideWindow=1
CandidateList.dontShowNextKeySequence=1
CandidateList.KeepCandidateListForInvalidKey=1
Composition.ConversionOnlyOneItem=1
Composition.QuitAndErrorOnConversion=1

[PreservedKey]
GuidImeMode={98213494-367A-4855-90A1-97D917E3EC3D}
KeyDefineImeMode=VK_SHIFT, TF_MOD_ON_KEYUP_SHIFT_ONLY
ImeMode=1

DoubleSingleByte=0
Punctuation=0

[LanguageBar]
EnableImeMode=0
EnableDoubleSingleByte=0
EnablePunctuation=0

[Profile]
KeystrokeFile ="%programFiles%\Windows NT\TableTextService\TableTextServiceUnicode.txt"
DictionaryFile="%programFiles%\Windows NT\TableTextService\TableTextServiceUnicode.txt"


[Keystroke.Composition]
VK_1,          0  = INPUT        // 1
VK_2,          0  = INPUT        // 2
VK_3,          0  = INPUT        // 3
VK_4,          0  = INPUT        // 4
VK_5,          0  = INPUT        // 5
VK_6,          0  = INPUT        // 6
VK_7,          0  = INPUT        // 7
VK_8,          0  = INPUT        // 8
VK_9,          0  = INPUT        // 9
VK_0,          0  = INPUT        // 0
VK_A,          0  = INPUT        // A
VK_B,          0  = INPUT        // B
VK_C,          0  = INPUT        // C
VK_D,          0  = INPUT        // D
VK_E,          0  = INPUT        // E
VK_F,          0  = INPUT        // F

[Text]
"0020" = " "
"0021" = "!"
"0022" ="
"0023" = "#"
"0024" = "$"
"0025" = "%"
"0026" = "&"
"0027" = "'"
"0028" = "("
"0029" = ")"
"002a" = "*"
"002b" = "+"
"002c" = ","
"002d" = "-"
"002e" = "."
"002f" = "/"
"0030" = "0"
"0031" = "1"
"0032" = "2"
"0033" = "3"
"0034" = "4"

middle part removed for brevity (and because copyright unclear)

"ffeb" = "→"
"ffec" = "↓"
"ffed" = "■"
"ffee" = "○"
"fff9" = ""
"fffa" = ""
"fffb" = ""
"fffc" = ""
"fffd" = "�"
kinokijuf
źródło
1
Chociaż teoretycznie może to odpowiedzieć na pytanie, lepiej byłoby zawrzeć tutaj istotne części odpowiedzi i podać odnośnik.
Der Hochstapler,
Zaktualizowałem odpowiedź kinokijuf na Windows 7
RedGrittyBrick