Używam kodu Alt do wielokropka, 8230, od pewnego czasu, w kilku aplikacjach. Kilka dni temu przestał działać i &
jest wyświetlany zamiast …
po naciśnięciu Alt+ 8+ 2+ 3+ 0(na klawiaturze numerycznej). Stało się to zarówno na moim komputerze stacjonarnym, jak i na laptopie (gdzie go używam Fn). Oba działają na 64-bit-Win-7 ze stroną kodową 850 i oba mogły niedawno zaktualizować system Windows i Operę 12.
Jaki może być powód wyłączenia tej metody wprowadzania danych i jak ją przełączyć z powrotem ?
Nawiasem mówiąc, właśnie dowiedziałem się, że Alt+ 0+ 1+ 3+ 3działa. Dowiedziałem się również, że Alt+ 8+ 2+ 3+ 0nadal działa w WordPad lub MsWord10, ale ani w Operze, ani Notepad ++ - tam kod znakowy jest tłumaczony modułem 256 przed wstawieniem.
…
za pomocą prostej i intuicyjnej kombinacji[Alt]
[.]
[.]
.Odpowiedzi:
O ile mi wiadomo, metoda Alt nnnn (dziesiętna nnnn> 255) jest funkcją RichEdit i dlatego działa tylko na wybranych programach, takich jak WordPad i MS Word. W innych programach wprowadzona liczba, nnnn, jest zmniejszana modulo 256, aby uzyskać liczbę z zakresu 0 ... 255, interpretowaną zgodnie z używaną stroną kodową.
Por. do Insert Unicode znaków z klawiatury? który opisuje niektóre alternatywne metody. Niestety, metoda Alt + xxxx (xxxx szesnastkowa; np. Alt + 2026 dla „…”) jest najwyraźniej domyślnie wyłączona i należy zmodyfikować rejestr systemu Windows, aby na to zezwolić. Oprócz narzędzia UnicodeInput istnieje również wprowadzanie Unicode według nazwy , ale metody te nie są tak wygodne do szybkiego pisania, jak metody Alt.
źródło
Kody Alt i znaki Unicode są tylko nieznacznie powiązane i (w przeważającej części) od każdej aplikacji zależy, jak sobie z nimi poradzić, więc może być różna w zależności od aplikacji, wersji aplikacji i tym podobnych.
Zasadniczo chodzi o kodowanie znaków i strony kodowe , a nie o czcionki lub dane wprowadzane przez użytkownika.
Kody Alt dla ASCII to tylko 0-255 (8-bitowa strona kodowa). Wiele programów (i systemów operacyjnych) radzi sobie z większymi liczbami wprowadzonymi przez użytkownika przez zawijanie na 256.
256 = 0, 257 = 1 itd.
Tak więc wpisanie ALT + 8230, w rzeczywistości jest równoważne wpisaniu ALT + 38 (8230/256 = 32.1484375. 256 * 32 = 8192. 8230 - 8192 = 38), który jest znakiem ASCII „&” - chyba że program go przechwyci i zastępuje go „poprawnymi” kodami Unicode lub przy użyciu innej strony kodowej (np. Unicode), jak na przykład MS Word i nowsze wersje WordPad.
Windows używa rozszerzonej wersji 8-bitowej strony kodowej MSDOS (850), zwanej stroną kodową „ Windows-1252 ” (w każdym razie dla języków angielskich). Ale wykorzystuje to tylko do starszych części systemu operacyjnego, które nie w pełni obsługują strony kodowe Unicode.
To są powody, dla których możesz łatwo zobaczyć różne wyniki w różnych systemach operacyjnych i aplikacjach, a także w różnych częściach samego systemu Windows.
To co najmniej mylące zagadnienie. :)
Jestem prawie pewien, że Alt-0133 jest „oficjalnym” rozszerzonym kodem ALT systemu Windows dla elipsy (na stronie kodowej systemu Windows), więc prawdopodobnie będziesz miał bardziej konsekwentne korzystanie z niego.
Oto kilka powiązanych informacji .
źródło
U + 8230 nie jest wielokropek, to Han Charakter wojenny :
舰
. Nie wiem, dlaczego miałeś kiedyś elipsę z tym kodem, ale 133 jest rzeczywiście właściwym punktem kodowym dla tego kodu.Gdzie dokładnie widzisz elipsę dla 8230? Być może był to błąd w Operze, który został naprawiony od ostatniej aktualizacji. Jeśli było to w „kilku aplikacjach”, być może miałeś błąd w czcionce, układzie klawiatury / ustawieniu regionalnym lub coś takiego (nie przychodzi mi na myśl nic oczywistego ani racjonalnego, więc musiał to być błąd, a nie uzasadnione ustawienie).
Jeśli (z jakiegoś powodu) naprawdę chcesz / musisz użyć do tego niepoprawnego punktu kodowego zamiast prawidłowego, możesz użyć czegoś takiego jak Authotkey, aby utworzyć skrypt, który akceptuje akord lub sekwencję i generuje to, co chcesz .
Czy na pewno udało Ci się wpisać Alt+ Numpad-8+ Numpad-0+ Numpad-2+ Numpad-3? Chociaż niektóre programy mogą go niezależnie obsługiwać, system Windows domyślnie nie akceptuje wysokich punktów kodowych Unicode. Możesz jednak użyć wpisu szesnastkowego : Alt+ Numpad-++ 2+ 0+ 2+ 6.
źródło
8230
jest dziesiętnym kodem znakowym U + 2026 ( Ellipsis ). Nigdy nie użyłem prefiksu+
ani0
, po prostu przytrzymałemAlt
i wprowadziłem czterocyfrowy kod dziesiętny. Jak powiedziano w pytaniu, nadal działa to dobrze w programie Word.→
, więc pozostanę przy0133
…Być może bieżąca czcionka nie obsługuje takich górnych znaków Unicode, zmień czcionkę na „Arial” i spróbuj ponownie.
Kiedy testuję to w WordPadzie, ALT + 8 + 2 + 3 + 0 działa dla Arial, ale nie dla niektórych innych czcionek.
źródło