diff options
610 files changed, 45605 insertions, 32774 deletions
diff --git a/X11/extensions/XIproto.txt b/X11/extensions/XIproto.txt new file mode 100644 index 000000000..20cc02a03 --- /dev/null +++ b/X11/extensions/XIproto.txt @@ -0,0 +1,2542 @@ + X11 Input Extension Protocol Specification + Version 1.0 + X Consortium Standard + X Version 11, Release 6.8 + Mark Patrick, Ardent Computer + George Sachs, Hewlett-Packard + + Version 1.5 + Peter Hutterer + + Copyright © 1989, 1990, 1991 by Hewlett-Packard Company and + Ardent Computer + + Permission to use, copy, modify, and distribute this + documentation for any purpose and without fee is hereby + granted, provided that the above copyright notice and this + permission notice appear in all copies. Ardent and + Hewlett-Packard make no representations about the suitability + for any purpose of the information in this document. It is + provided "as is" without express or implied warranty. Copyright + © 1989, 1990, 1991, 1992 X Consortium + + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the “Softwareâ€), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following + conditions: + + The above copyright notice and this permission notice shall be + included in all copies or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED “AS ISâ€, WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE + FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION + OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN + CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN + THE SOFTWARE. + + Except as contained in this notice, the name of the X + Consortium shall not be used in advertising or otherwise to + promote the sale, use or other dealings in this Software + without prior written authorization from the X Consortium. X + Window System is a trademark of The Open Group. + + Copyright © 2008 by Peter Hutterer + + Permission is hereby granted, free of charge, to any person + obtaining a copy of this software and associated documentation + files (the "Software"), to deal in the Software without + restriction, including without limitation the rights to use, + copy, modify, merge, publish, distribute, sublicense, and/or + sell copies of the Software, and to permit persons to whom the + Software is furnished to do so, subject to the following + conditions: + + The above copyright notice and this permission notice + (including the next paragraph) shall be included in all copies + or substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, + EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES + OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT + HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, + WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING + FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR + OTHER DEALINGS IN THE SOFTWARE. + +1. Input Extension Overview + + This document defines an extension to the X11 protocol to + support input devices other than the core X keyboard and + pointer. An accompanying document defines a corresponding + extension to Xlib (similar extensions for languages other than + C are anticipated). This first section gives an overview of the + input extension. The next section defines the new protocol + requests defined by the extension. We conclude with a + description of the new input events generated by the additional + input devices. + + This document only describes the behaviour of servers supporting + up to the X Input Extension 1.5. For servers supporting the X + Input Extensions 2.0, see XI2proto.txt. New clients are discouraged + from using this protocol specification. Instead, the use of XI 2.x + is recommended. + +1.1 Design Approach + + The design approach of the extension is to define requests and + events analogous to the core requests and events. This allows + extension input devices to be individually distinguishable from + each other and from the core input devices. These requests and + events make use of a device identifier and support the + reporting of n-dimensional motion data as well as other data + that is not reportable via the core input events. + +1.2 Core Input Devices + + The X server core protocol supports two input devices: a + pointer and a keyboard. The pointer device has two major + functions. First, it may be used to generate motion information + that client programs can detect. Second, it may also be used to + indicate the current location and focus of the X keyboard. To + accomplish this, the server echoes a cursor at the current + position of the X pointer. Unless the X keyboard has been + explicitly focused, this cursor also shows the current location + and focus of the X keyboard. The X keyboard is used to generate + input that client programs can detect. + + In servers supporting XI 1.4 and above, the core pointer and + the core keyboard are virtual devices that do not represent a + physical device connected to the host computer. + In servers supporting XI 2.0 and above, there may be multiple + core pointers and keyboards. Refer to XI2proto.txt for more + information. + + The X keyboard and X pointer are referred to in this document + as the core devices, and the input events they generate + (KeyPress, KeyRelease, ButtonPress, ButtonRelease, and + MotionNotify) are known as the core input events. All other + input devices are referred to as extension input devices and + the input events they generate are referred to as extension + input events. + + In servers supporting only XI 1.x, this input extension does + not change the behavior or functionality of the core input + devices, core events, or core protocol requests, with the + exception of the core grab requests. These requests may affect + the synchronization of events from extension devices. See the + explanation in the section titled "Event Synchronization and + Core Grabs". + + Selection of the physical devices to be initially used by the + server as the core devices is left implementation-dependent. + Requests are defined that allow client programs to change which + physical devices are used as the core devices. + +1.3 Extension Input Devices + + The input extension v1.x controls access to input devices other + than the X keyboard and X pointer. It allows client programs to + select input from these devices independently from each other + and independently from the core devices. + + A client that wishes to access a specific device must first + determine whether that device is connected to the X server. + This is done through the ListInputDevices request, which will + return a list of all devices that can be opened by the X + server. A client can then open one or more of these devices + using the OpenDevice request, specify what events they are + interested in receiving, and receive and process input events + from extension devices in the same way as events from the X + keyboard and X pointer. Input events from these devices are of + extension types ( DeviceKeyPress, DeviceKeyRelease, + DeviceButtonPress, DeviceButtonRelease, DeviceMotionNotify, + etc.) and contain a device identifier so that events of the + same type coming from different input devices can be + distinguished. + + Any kind of input device may be used as an extension input + device. Extension input devices may have 0 or more keys, 0 or + more buttons, and may report 0 or more axes of motion. Motion + may be reported as relative movements from a previous position + or as an absolute position. All valuators reporting motion + information for a given extension input device must report the + same kind of motion information (absolute or relative). + + This extension is designed to accommodate new types of input + devices that may be added in the future. The protocol requests + that refer to specific characteristics of input devices + organize that information by input classes. Server implementors + may add new classes of input devices without changing the + protocol requests. Input classes are unique numbers registered + with the X Consortium. Each extension input device may support + multiple input classes. + + In XI 1.x, all extension input devices are treated like the + core X keyboard in determining their location and focus. The + server does not track the location of these devices on an + individual basis, and therefore does not echo a cursor to + indicate their current location. Instead, their location is + determined by the location of the core X pointer. Like the core + X keyboard, some may be explicitly focused. If they are not + explicitly focused, their focus is determined by the location + of the core X pointer. + + Most input events reported by the server to a client are of + fixed size (32 bytes). In order to represent the change in + state of an input device the extension may need to generate a + sequence of input events. A client side library (such as Xlib) + will typically take these raw input events and format them into + a form more convenient to the client. + +1.4 Event Classes + + In the core protocol a client registers interest in receiving + certain input events directed to a window by modifying that + window's event-mask. Most of the bits in the event mask are + already used to specify interest in core X events. The input + extension specifies a different mechanism by which a client can + express interest in events generated by this extension. + + When a client opens a extension input device via the OpenDevice + request, an XDevice structure is returned. Macros are provided + that extract 32-bit numbers called event classes from that + structure, that a client can use to register interest in + extension events via the SelectExtensionEvent request. The + event class combines the desired event type and device id, and + may be thought of as the equivalent of core event masks. + +1.5 Input Classes + + Some of the input extension requests divide input devices into + classes based on their functionality. This is intended to allow + new classes of input devices to be defined at a later time + without changing the semantics of these requests. The following + input device classes are currently defined: + + KEY + The device reports key events. + + BUTTON + The device reports button events. + + VALUATOR + The device reports valuator data in motion events. + + PROXIMITY + The device reports proximity events. + + FOCUS + The device can be focused and reports focus events. + + FEEDBACK + The device supports feedbacks. + + OTHER + The ChangeDeviceNotify, DeviceMappingNotify, and + DeviceStateNotify macros may be invoked passing the + XDevice structure returned for this device. + + Each extension input device may support multiple input classes. + Additional classes may be added in the future. Requests that + support multiple input classes, such as the ListInputDevices + function that lists all available input devices, organize the + data they return by input class. Client programs that use these + requests should not access data unless it matches a class + defined at the time those clients were compiled. In this way, + new classes can be added without forcing existing clients that + use these requests to be recompiled. + +2. Requests + + Extension input devices are accessed by client programs through + the use of new protocol requests. This section summarizes the + new requests defined by this extension. The syntax and type + definitions used below follow the notation used for the X11 + core protocol. + +2.1 Getting the Extension Version + + The GetExtensionVersion request returns version information + about the input extension. + + GetExtensionVersion + name: STRING + => + present: BOOL + protocol-major-version: CARD16 + protocol-minor-version: CARD16 + + The protocol version numbers returned indicate the version of + the input extension supported by the target X server. The + version numbers can be compared to constants defined in the + header file XI.h. Each version is a superset of the previous + versions. + + The name must be the name of the Input Extension as defined + in the header file XI.h. + +2.2 Listing Available Devices + + A client that wishes to access a specific device must first + determine whether that device is connected to the X server. + This is done through the ListInputDevices request, which will + return a list of all devices that can be opened by the X + server. + + ListInputDevices + => + input-devices: ListOfDeviceInfo + + where + + DEVICEINFO: + [type: ATOM + id: CARD8 + num_classes: CARD8 + use: {IsXKeyboard, IsXPointer, IsXExtensionPointer, + IsXExtensionKeyboard, IsExtensionDevice} + info: LISTofINPUTINFO + name: STRING8] + + INPUTINFO: {KEYINFO, BUTTONINFO, VALUATORINFO} + KEYINFO: + [class: CARD8 + length: CARD8 + min-keycode: KEYCODE + max-keycode: KEYCODE + num-keys: CARD16] + BUTTONINFO: + [class: CARD8 + length: CARD8 + num-buttons: CARD16] + VALUATORINFO: + [class: CARD8 + length: CARD8 + num_axes: CARD8 + mode: SETofDEVICEMODE + motion_buffer_size: CARD32 + axes: LISTofAXISINFO] + + AXISINFO: + [resolution: CARD32 + min-val: CARD32 + max-val: CARD32] + DEVICEMODE: {Absolute, Relative} + + Errors: None + + This request returns a list of all devices that can be opened + by the X server, including the core X keyboard and X pointer. + Some implementations may open all input devices as part of X + initialization, while others may not open an input device until + requested to do so by a client program. + + The information returned for each device is as follows: + + type + The type field is of type Atom and indicates the nature + of the device. Clients may determine device types by + invoking the XInternAtom request passing one of the + names defined in the header file XI.h. The following + names have been defined to date: + + MOUSE + TABLET + KEYBOARD + TOUCHSCREEN + TOUCHPAD + BUTTONBOX + BARCODE + KNOB_BOX + TRACKBALL + QUADRATURE + SPACEBALL + DATAGLOVE + EYETRACKER + CURSORKEYS + FOOTMOUSE + ID_MODULE + ONE_KNOB + NINE_KNOB + JOYSTICK + + + id + The id is a small cardinal value in the range 0-128 that + uniquely identifies the device. It is assigned to the + device when it is initialized by the server. Some + implementations may not open an input device until + requested by a client program, and may close the device + when the last client accessing it requests that it be + closed. If a device is opened by a client program via + XOpenDevice, then closed via XCloseDevice, then opened + again, it is not guaranteed to have the same id after + the second open request. + + num_classes + The num_classes field is a small cardinal value in the + range 0-255 that specifies the number of input classes + supported by the device for which information is + returned by ListInputDevices. Some input classes, such + as class Focus and class Proximity do not have any + information to be returned by ListInputDevices. + + use + The use field specifies how the device is currently + being used. If the value is IsXKeyboard, the device is + currently being used as the X keyboard. If the value is + IsXPointer, the device is currently being used as the X + pointer. If the value is IsXExtensionPointer, the device + is available for use as an extension pointer. If the value + is IsXExtensionKeyboard, the device is available for use as + and extension keyboard. + Older versions of XI report all extension devices as + IsXExtensionDevice. + + name + The name field contains a pointer to a null-terminated + string that corresponds to one of the defined device + types. + + InputInfo + InputInfo is one of: KeyInfo, ButtonInfo or + ValuatorInfo. The first two fields are common to all + three: + + class + The class field is a cardinal value in the range + 0-255. It uniquely identifies the class of input + for which information is returned. + + length + The length field is a cardinal value in the range + 0-255. It specifies the number of bytes of data + that are contained in this input class. The length + includes the class and length fields. + + The remaining information returned for input class + KEYCLASS is as follows: + + min_keycode + min_keycode is of type KEYCODE. It specifies the + minimum keycode that the device will report. The + minimum keycode will not be smaller than 8. + + max_keycode + max_keycode is of type KEYCODE. It specifies the + maximum keycode that the device will report. The + maximum keycode will not be larger than 255. + + num_keys + num_keys is a cardinal value that specifies the + number of keys that the device has. + + The remaining information returned for input class + BUTTONCLASS is as follows: + + num_buttons + num_buttons is a cardinal value that specifies the + number of buttons that the device has. + + The remaining information returned for input class + VALUATORCLASS is as follows: + + mode + mode is a constant that has one of the following + values: Absolute or Relative. Some devices allow + the mode to be changed dynamically via the + SetDeviceMode request. + + motion_buffer_size + motion_buffer_size is a cardinal number that + specifies the number of elements that can be + contained in the motion history buffer for the + device. + + axes + The axes field contains a pointer to an AXISINFO + struture. + + The information returned for each axis reported by the + device is: + + resolution + The resolution is a cardinal value in + counts/meter. + + min_val + The min_val field is a cardinal value in that + contains the minimum value the device reports for + this axis. For devices whose mode is Relative, the + min_val field will contain 0. + + max_val + The max_val field is a cardinal value in that + contains the maximum value the device reports for + this axis. For devices whose mode is Relative, the + max_val field will contain 0. + +2.3 Enabling Devices + + Client programs that wish to access an extension device must + request that the server open that device. This is done via the + OpenDevice request. + + OpenDevice + id: CARD8 + => + DEVICE: + [device_id: XID + num_classes: INT32 + classes: LISTofINPUTCLASSINFO] + INPUTCLASSINFO: + [input_class: CARD8 + event_type_base: CARD8] + + Errors: Device + + This request returns the event classes to be used by the client + to indicate which events the client program wishes to receive. + Each input class may report several event classes. For example, + input class Keys reports DeviceKeyPress and DeviceKeyRelease + event classes. Input classes are unique numbers registered with + the X Consortium. Input class Other exists to report event + classes that are not specific to any one input class, such as + DeviceMappingNotify, ChangeDeviceNotify, and DeviceStateNotify. + + The information returned for each device is as follows: + + device_id + The device_id is a number that uniquely identifies the + device. + + num_classes + The num_classes field contains the number of input + classes supported by this device. + + For each class of input supported by the device, the + InputClassInfo structure contains the following information: + + input_class + The input_class is a small cardinal number that + identifies the class of input. + + event_type_base + The event_type_base is a small cardinal number that + specifies the event type of one of the events reported + by this input class. This information is not directly + used by client programs. Instead, the Device is used by + macros that return extension event types and event + classes. This is described in the section of this + document entitled "Selecting Extension Device Events". + + The information in the InputClassInfo reflects the state of + this device at the time the request was processed. + + Before it exits, the client program should explicitly request + that the server close the device. This is done via the + CloseDevice request. + + A client may open the same extension device more than once. + Requests after the first successful one return an additional + XDevice structure with the same information as the first, but + otherwise have no effect. A single CloseDevice request will + terminate that client's access to the device. + + Closing a device releases any active or passive grabs the + requesting client has established. If the device is frozen only + by an active grab of the requesting client, the queued events + are released when the client terminates. + + If a client program terminates without closing a device, the + server will automatically close that device on behalf of the + client. This does not affect any other clients that may be + accessing that device. + + CloseDevice: + device: DEVICE + + Errors: Device + +2.4 Changing The Mode Of A Device + + Some devices are capable of reporting either relative or + absolute motion data. To change the mode of a device from + relative to absolute, use the SetDeviceMode request. The valid + values are Absolute or Relative. + + This request will fail and return DeviceBusy if another client + already has the device open with a different mode. It will fail + and return AlreadyGrabbed if another client has the device + grabbed. The request will fail with a BadMatch error if the + requested mode is not supported by the device. + + SetDeviceMode + device:DEVICE + mode: {Absolute, Relative} + => + status: {Success, DeviceBusy, AlreadyGrabbed} + + Errors: Device, Match, Mode + +2.5 Initializing Valuators on an Input Device + + Some devices that report absolute positional data can be + initialized to a starting value. Devices that are capable of + reporting relative motion or absolute positional data may + require that their valuators be initialized to a starting value + after the mode of the device is changed to Absolute. To + initialize the valuators on such a device, use the + SetDeviceValuators request. + + SetDeviceValuators + device: DEVICE + first_valuator: CARD8 + num_valuators: CARD8 + valuators: LISTOFINT32 + => + status: {Success, AlreadyGrabbed} + + Errors: Length, Device, Match, Value + + This request initializes the specified valuators on the + specified extension input device. Valuators are numbered + beginning with zero. Only the valuators in the range specified + by first_valuator and num_valuators are set. If the number of + valuators supported by the device is less than the expression + first_valuator + num_valuators, a Value error will result. + + If the request succeeds, Success is returned. If the specifed + device is grabbed by some other client, the request will fail + and a status of AlreadyGrabbed will be returned. + +2.6 Getting Input Device Controls + + GetDeviceControl + device: DEVICE + control: XID + => + controlState: {DeviceState} + + where + + DeviceState: DeviceResolutionState + + Errors: Length, Device, Match, Value + + This request returns the current state of the specified device + control. The device control must be supported by the target + server and device or an error will result. + + If the request is successful, a pointer to a generic + DeviceState structure will be returned. The information + returned varies according to the specified control and is + mapped by a structure appropriate for that control. + + GetDeviceControl will fail with a BadValue error if the server + does not support the specified control. It will fail with a + BadMatch error if the device does not support the specified + control. + + Supported device controls and the information returned for them + include: + + DEVICE_RESOLUTION: + [control: CARD16 + length: CARD16 + num_valuators: CARD8 + resolutions: LISTofCARD32 + min_resolutions: LISTofCARD32 + max_resolutions: LISTofCARD32] + + This device control returns a list of valuators and the range + of valid resolutions allowed for each. Valuators are numbered + beginning with 0. Resolutions for all valuators on the device + are returned. For each valuator i on the device, resolutions[i] + returns the current setting of the resolution, + min_resolutions[i] returns the minimum valid setting, and + max_resolutions[i] returns the maximum valid setting. + + When this control is specified, XGetDeviceControl will fail + with a BadMatch error if the specified device has no valuators. + + ChangeDeviceControl: + device: DEVICE + XID: controlId + control: DeviceControl + + where + + DeviceControl: DeviceResolutionControl + => + status: {Success, DeviceBusy, AlreadyGrabbed} + + Errors: Length, Device, Match, Value + + ChangeDeviceControl changes the specifed device control + according to the values specified in the DeviceControl + structure. The device control must be supported by the target + server and device or an error will result. + + The information passed with this request varies according to + the specified control and is mapped by a structure appropriate + for that control. + + ChangeDeviceControl will fail with a BadValue error if the + server does not support the specified control. It will fail + with a BadMatch error if the server supports the specified + control, but the requested device does not. The request will + fail and return a status of DeviceBusy if another client + already has the device open with a device control state that + conflicts with the one specified in the request. It will fail + with a status of AlreadyGrabbed if some other client has + grabbed the specified device. If the request succeeds, Success + is returned. If it fails, the device control is left unchanged. + + Supported device controls and the information specified for + them include: + + DEVICE_RESOLUTION: + [control: CARD16 + length: CARD16 + first_valuator: CARD8 + num_valuators: CARD8 + resolutions: LISTofCARD32] + + This device control changes the resolution of the specified + valuators on the specified extension input device. Valuators + are numbered beginning with zero. Only the valuators in the + range specified by first_valuator and num_valuators are set. A + value of -1 in the resolutions list indicates that the + resolution for this valuator is not to be changed. + num_valuators specifies the number of valuators in the + resolutions list. + + When this control is specified, XChangeDeviceControl will fail + with a BadMatch error if the specified device has no valuators. + If a resolution is specified that is not within the range of + valid values (as returned by XGetDeviceControl) the request + will fail with a BadValue error. If the number of valuators + supported by the device is less than the expression + first_valuator + num_valuators, a BadValue error will result. + + If the request fails for any reason, none of the valuator + resolutions will be changed. + + ChangeDeviceControl causes the server to send a DevicePresence + event to interested clients. + +2.7 Selecting Extension Device Events + + Extension input events are selected using the + SelectExtensionEvent request. + + SelectExtensionEvent + interest: LISTofEVENTCLASS + window: WINDOW + + Errors: Window, Class, Access + + This request specifies to the server the events within the + specified window which are of interest to the client. As with + the core XSelectInput function, multiple clients can select + input on the same window. + + XSelectExtensionEvent requires a list of event classes. An + event class is a 32-bit number that combines an event type and + device id, and is used to indicate which event a client wishes + to receive and from which device it wishes to receive it. + Macros are provided to obtain event classes from the data + returned by the XOpenDevice request. The names of these macros + correspond to the desired events, i.e. the DeviceKeyPress is + used to obtain the event class for DeviceKeyPress events. The + syntax of the macro invocation is: + DeviceKeyPress (device, event_type, event_class); + device: DEVICE + event_type: INT + event_class: INT + + The value returned in event_type is the value that will be + contained in the event type field of the XDeviceKeyPressEvent + when it is received by the client. The value returned in + event_class is the value that should be passed in making an + XSelectExtensionEvent request to receive DeviceKeyPress events. + + For DeviceButtonPress events, the client may specify whether or + not an implicit passive grab should be done when the button is + pressed. If the client wants to guarantee that it will receive + a DeviceButtonRelease event for each DeviceButtonPress event it + receives, it should specify the DeviceButtonPressGrab event + class as well as the DeviceButtonPress event class. This + restricts the client in that only one client at a time may + request DeviceButtonPress events from the same device and + window if any client specifies this class. + + If any client has specified the DeviceButtonPressGrab class, + any requests by any other client that specify the same device + and window and specify DeviceButtonPress or + DeviceButtonPressGrab will cause an Access error to be + generated. + + If only the DeviceButtonPress class is specified, no implicit + passive grab will be done when a button is pressed on the + device. Multiple clients may use this class to specify the same + device and window combination. + + A client may also specify the DeviceOwnerGrabButton class. If + it has specified both the DeviceButtonPressGrab and the + DeviceOwnerGrabButton classes, implicit passive grabs will + activate with owner_events set to True. If only the + DeviceButtonPressGrab class is specified, implicit passive + grabs will activate with owner_events set to False. + + The client may select DeviceMotion events only when a button is + down. It does this by specifying the event classes + Button1Motion through Button5Motion, or ButtonMotion. An input + device will only support as many button motion classes as it + has buttons. + +2.8 Determining Selected Events + + To determine which extension events are currently selected from + a given window, use GetSelectedExtensionEvents. + + GetSelectedExtensionEvents + window: WINDOW + => + this-client: LISTofEVENTCLASS + all-clients: LISTofEVENTCLASS + + Errors: Window + + This request returns two lists specifying the events selected + on the specified window. One list gives the extension events + selected by this client from the specified window. The other + list gives the extension events selected by all clients from + the specified window. This information is equivalent to that + returned by your-event-mask and all-event-masks in a + GetWindowAttributes request. + +2.9 Controlling Event Propagation + + Extension events propagate up the window hierarchy in the same + manner as core events. If a window is not interested in an + extension event, it usually propagates to the closest ancestor + that is interested, unless the dont_propagate list prohibits + it. Grabs of extension devices may alter the set of windows + that receive a particular extension event. + + Client programs may control extension event propagation through + the use of the following two requests. + + XChangeDeviceDontPropagateList adds an event to or deletes an + event from the do_not_propagate list of extension events for + the specified window. This list is maintained for the life of + the window, and is not altered if the client terminates. + + ChangeDeviceDontPropagateList + window: WINDOW + eventclass: LISTofEVENTCLASS + mode: {AddToList, DeleteFromList} + + Errors: Window, Class, Mode + + This function modifies the list specifying the events that are + not propagated to the ancestors of the specified window. You + may use the modes AddToList or DeleteFromList. + + GetDeviceDontPropagateList + window: WINDOW + Errors: Window + => + dont-propagate-list: LISTofEVENTCLASS + + This function returns a list specifying the events that are not + propagated to the ancestors of the specified window. + +2.10 Sending Extension Events + + One client program may send an event to another via the + XSendExtensionEvent function. + + The event in the XEvent structure must be one of the events + defined by the input extension, so that the X server can + correctly byte swap the contents as necessary. The contents of + the event are otherwise unaltered and unchecked by the X server + except to force send_event to True in the forwarded event and + to set the sequence number in the event correctly. + + XSendExtensionEvent returns zero if the conversion-to-wire + protocol failed, otherwise it returns nonzero. + + SendExtensionEvent + device: DEVICE + destination: WINDOW + propagate: BOOL + eventclass: LISTofEVENTCLASS + event: XEVENT + + Errors: Device, Value, Class, Window + +2.11 Getting Motion History + + GetDeviceMotionEvents + device: DEVICE + start, stop: TIMESTAMP or CurrentTime + => + nevents_return: CARD32 + mode_return: {Absolute, Relative} + axis_count_return: CARD8 + events: LISTofDEVICETIMECOORD + + where + + DEVICETIMECOORD: + [data: LISTofINT32 + time: TIMESTAMP] + + Errors: Device, Match + + This request returns all positions in the device's motion + history buffer that fall between the specified start and stop + times inclusive. If the start time is in the future, or is + later than the stop time, no positions are returned. + + The data field of the DEVICETIMECOORD structure is a sequence + of data items. Each item is of type INT32, and there is one + data item per axis of motion reported by the device. The number + of axes reported by the device is returned in the axis_count + variable. + + The value of the data items depends on the mode of the device, + which is returned in the mode variable. If the mode is + Absolute, the data items are the raw values generated by the + device. These may be scaled by the client program using the + maximum values that the device can generate for each axis of + motion that it reports. The maximum and minimum values for each + axis are reported by the ListInputDevices request. + + If the mode is Relative, the data items are the relative values + generated by the device. The client program must choose an + initial position for the device and maintain a current position + by accumulating these relative values. + +2.12 Changing The Core Devices + + These requests are provided to change which physical device is + used as the X pointer or X keyboard. These requests are + deprecated in servers supporting XI 1.4 and above, and will + always return a a BadDevice error. + + Using these requests may change the characteristics of the core + devices. The new pointer device may have a different number of + buttons than the old one did, or the new keyboard device may + have a different number of keys or report a different range of + keycodes. Client programs may be running that depend on those + characteristics. For example, a client program could allocate + an array based on the number of buttons on the pointer device, + and then use the button numbers received in button events as + indicies into that array. Changing the core devices could cause + such client programs to behave improperly or abnormally + terminate. + + These requests change the X keyboard or X pointer device and + generate an ChangeDeviceNotify event and a MappingNotify event. + The ChangeDeviceNotify event is sent only to those clients that + have expressed an interest in receiving that event via the + XSelectExtensionEvent request. The specified device becomes the + new X keyboard or X pointer device. The location of the core + device does not change as a result of this request. + + These requests fail and return AlreadyGrabbed if either the + specified device or the core device it would replace are + grabbed by some other client. They fail and return GrabFrozen + if either device is frozen by the active grab of another + client. + + These requests fail with a BadDevice error if the specified + device is invalid, or has not previously been opened via + OpenDevice. To change the X keyboard device, use the + ChangeKeyboardDevice request. The specified device must support + input class Keys (as reported in the ListInputDevices request) + or the request will fail with a BadMatch error. Once the device + has successfully replaced one of the core devices, it is + treated as a core device until it is in turn replaced by + another ChangeDevice request, or until the server terminates. + The termination of the client that changed the device will not + cause it to change back. Attempts to use the CloseDevice + request to close the new core device will fail with a BadDevice + error. + + The focus state of the new keyboard is the same as the focus + state of the old X keyboard. If the new keyboard was not + initialized with a FocusRec, one is added by the + ChangeKeyboardDevice request. The X keyboard is assumed to have + a KbdFeedbackClassRec. If the device was initialized without a + KbdFeedbackClassRec, one will be added by this request. The + KbdFeedbackClassRec will specify a null routine as the control + procedure and the bell procedure. + + ChangeKeyboardDevice + device: DEVICE + Errors: Device, Match + => + status: Success, AlreadyGrabbed, Frozen + + To change the X pointer device, use the ChangePointerDevice + request. The specified device must support input class + Valuators (as reported in the ListInputDevices request) or the + request will fail with a BadMatch error. The valuators to be + used as the x- and y-axes of the pointer device must be + specified. Data from other valuators on the device will be + ignored. + + The X pointer device does not contain a FocusRec. If the new + pointer was initialized with a FocusRec, it is freed by the + ChangePointerDevice request. The X pointer is assumed to have a + ButtonClassRec and a PtrFeedbackClassRec. If the device was + initialized without a ButtonClassRec or a PtrFeedbackClassRec, + one will be added by this request. The ButtonClassRec added + will have no buttons, and the PtrFeedbackClassRec will specify + a null routine as the control procedure. + + If the specified device reports absolute positional + information, and the server implementation does not allow such + a device to be used as the X pointer, the request will fail + with a BadDevice error. + + Once the device has successfully replaced one of the core + devices, it is treated as a core device until it is in turn + replaced by another ChangeDevice request, or until the server + terminates. The termination of the client that changed the + device will not cause it to change back. Attempts to use the + CloseDevice request to close the new core device will fail with + a BadDevice error. + + ChangePointerDevice + device: DEVICE + xaxis: CARD8 + yaxis: CARD8 + => + status: Success, AlreadyGrabbed, Frozen + + Errors: Device, Match + +2.12 Event Synchronization And Core Grabs + + Implementation of the input extension requires an extension of + the meaning of event synchronization for the core grab + requests. This is necessary in order to allow window managers + to freeze all input devices with a single request. + + The core grab requests require a pointer_mode and keyboard_mode + argument. The meaning of these modes is changed by the input + extension. For the XGrabPointer and XGrabButton requests, + pointer_mode controls synchronization of the pointer device, + and keyboard_mode controls the synchronization of all other + input devices. For the XGrabKeyboard and XGrabKey requests, + pointer_mode controls the synchronization of all input devices + except the X keyboard, while keyboard_mode controls the + synchronization of the keyboard. When using one of the core + grab requests, the synchronization of extension devices is + controlled by the mode specified for the device not being + grabbed. + +2.13 Extension Active Grabs + + Active grabs of extension devices are supported via the + GrabDevice request in the same way that core devices are + grabbed using the core GrabKeyboard request, except that a + Device is passed as a function parameter. A list of events that + the client wishes to receive is also passed. The UngrabDevice + request allows a previous active grab for an extension device + to be released. + + To grab an extension device, use the GrabDevice request. The + device must have previously been opened using the OpenDevice + request. + + GrabDevice + device: DEVICE + grab-window: WINDOW + owner-events: BOOL + event-list: LISTofEVENTCLASS + this-device-mode: {Synchronous, Asynchronous} + other-device-mode: {Synchronous, Asynchronous} + time:TIMESTAMP or CurrentTime + => + status: Success, AlreadyGrabbed, Frozen, + InvalidTime, NotViewable + + Errors: Device, Window, Value + + This request actively grabs control of the specified input + device. Further input events from this device are reported only + to the grabbing client. This request overrides any previous + active grab by this client for this device. + + The event-list parameter is a pointer to a list of event + classes. These are used to indicate which events the client + wishes to receive while the device is grabbed. Only event + classes obtained from the grabbed device are valid. + + If owner-events is False, input events generated from this + device are reported with respect to grab-window, and are only + reported if selected by being included in the event-list. If + owner-events is True, then if a generated event would normally + be reported to this client, it is reported normally, otherwise + the event is reported with respect to the grab-window, and is + only reported if selected by being included in the event-list. + For either value of owner-events, unreported events are + discarded. + + If this-device-mode is Asynchronous, device event processing + continues normally. If the device is currently frozen by this + client, then processing of device events is resumed. If + this-device-mode is Synchronous, the state of the grabbed + device (as seen by means of the protocol) appears to freeze, + and no further device events are generated by the server until + the grabbing client issues a releasing AllowDeviceEvents + request or until the device grab is released. Actual device + input events are not lost while the device is frozen; they are + simply queued for later processing. + + If other-device-mode is Asynchronous, event processing is + unaffected by activation of the grab. If other-device-mode is + Synchronous, the state of all input devices except the grabbed + one (as seen by means of the protocol) appears to freeze, and + no further events are generated by the server until the + grabbing client issues a releasing AllowDeviceEvents request or + until the device grab is released. Actual events are not lost + while the devices are frozen; they are simply queued for later + processing. + + This request generates DeviceFocusIn and DeviceFocusOut events. + + This request fails and returns: + + AlreadyGrabbed + If the device is actively grabbed by some other client. + + NotViewable + If grab-window is not viewable. + + InvalidTime + If the specified time is earlier than the last-grab-time + for the specified device or later than the current X + server time. Otherwise, the last-grab-time for the + specified device is set to the specified time and + CurrentTime is replaced by the current X server time. + + Frozen + If the device is frozen by an active grab of another + client. + + If a grabbed device is closed by a client while an active grab + by that client is in effect, that active grab will be released. + Any passive grabs established by that client will be released. + If the device is frozen only by an active grab of the + requesting client, it is thawed. + + To release a grab of an extension device, use UngrabDevice. + + UngrabDevice + device: DEVICE + time: TIMESTAMP or CurrentTime + + Errors: Device + + This request releases the device if this client has it actively + grabbed (from either GrabDevice or GrabDeviceKey) and releases + any queued events. If any devices were frozen by the grab, + UngrabDevice thaws them. The request has no effect if the + specified time is earlier than the last-device-grab time or is + later than the current server time. + + This request generates DeviceFocusIn and DeviceFocusOut events. + + An UngrabDevice is performed automatically if the event window + for an active device grab becomes not viewable. + +2.14 Passively Grabbing A Key + + Passive grabs of buttons and keys on extension devices are + supported via the GrabDeviceButton and GrabDeviceKey requests. + These passive grabs are released via the UngrabDeviceKey and + UngrabDeviceButton requests. + + To passively grab a single key on an extension device, use + GrabDeviceKey. That device must have previously been opened + using the OpenDevice request. + + GrabDeviceKey + device: DEVICE + keycode: KEYCODE or AnyKey + modifiers: SETofKEYMASK or AnyModifier + modifier-device: DEVICE or NULL + grab-window: WINDOW + owner-events: BOOL + event-list: LISTofEVENTCLASS + this-device-mode: {Synchronous, Asynchronous} + other-device-mode: {Synchronous, Asynchronous} + + Errors: Device, Match, Access, Window, Value + + This request is analogous to the core GrabKey request. It + establishes a passive grab on a device. Consequently, in the + future: + * IF the device is not grabbed and the specified key, which + itself can be a modifier key, is logically pressed when the + specified modifier keys logically are down on the specified + modifier device (and no other keys are down), + * AND no other modifier keys logically are down, + * AND EITHER the grab window is an ancestor of (or is) the + focus window OR the grab window is a descendent of the + focus window and contains the pointer, + * AND a passive grab on the same device and key combination + does not exist on any ancestor of the grab window, + * THEN the device is actively grabbed, as for GrabDevice, the + last-device-grab time is set to the time at which the key + was pressed (as transmitted in the DeviceKeyPress event), + and the DeviceKeyPress event is reported. + + The interpretation of the remaining arguments is as for + GrabDevice. The active grab is terminated automatically when + logical state of the device has the specified key released + (independent of the logical state of the modifier keys). + + Note that the logical state of a device (as seen by means of + the X protocol) may lag the physical state if device event + processing is frozen. + + A modifier of AnyModifier is equivalent to issuing the request + for all possible modifier combinations (including the + combination of no modifiers). It is not required that all + modifiers specified have currently assigned keycodes. A key of + AnyKey is equivalent to issuing the request for all possible + keycodes. Otherwise, the key must be in the range specified by + min-keycode and max-keycode in the ListInputDevices request. If + it is not within that range, GrabDeviceKey generates a Value + error. + + NULL may be passed for the modifier_device. If the + modifier_device is NULL, the core X keyboard is used as the + modifier_device. + + An Access error is generated if some other client has issued a + GrabDeviceKey with the same device and key combination on the + same window. When using AnyModifier or AnyKey, the request + fails completely and the X server generates a Access error and + no grabs are established if there is a conflicting grab for any + combination. + + This request cannot be used to grab a key on the X keyboard + device. The core GrabKey request should be used for that + purpose. + + To release a passive grab of a single key on an extension + device, use UngrabDeviceKey. + + UngrabDeviceKey + device: DEVICE + keycode: KEYCODE or AnyKey + modifiers: SETofKEYMASK or AnyModifier + modifier-device: DEVICE or NULL + grab-window: WINDOW + + Errors: Device, Match, Window, Value, Alloc + + This request is analogous to the core UngrabKey request. It + releases the key combination on the specified window if it was + grabbed by this client. A modifier of AnyModifier is equivalent + to issuing the request for all possible modifier combinations + (including the combination of no modifiers). A key of AnyKey is + equivalent to issuing the request for all possible keycodes. + This request has no effect on an active grab. + + NULL may be passed for the modifier_device. If the + modifier_device is NULL, the core X keyboard is used as the + modifier_device. + +2.15 Passively Grabbing A Button + + To establish a passive grab for a single button on an extension + device, use GrabDeviceButton. + + GrabDeviceButton + device: DEVICE + button: BUTTON or AnyButton + modifiers: SETofKEYMASK or AnyModifier + modifier-device: DEVICE or NULL + grab-window: WINDOW + owner-events: BOOL + event-list: LISTofEVENTCLASS + this-device-mode: {Synchronous, Asynchr + onous} + other-device-mode: {Synchronous, Asynch + ronous} + + Errors: Device, Match, Window, Access, Value + + This request is analogous to the core GrabButton request. It + establishes an explicit passive grab for a button on an + extension input device. Since the server does not track + extension devices, no cursor is specified with this request. + For the same reason, there is no confine-to parameter. The + device must have previously been opened using the OpenDevice + request. + + The GrabDeviceButton request establishes a passive grab on a + device. Consequently, in the future, + + • + IF the device is not grabbed and the specified button is + logically pressed when the specified modifier keys + logically are down (and no other buttons or modifier + keys are down), + + • + AND the grab window contains the device, + + • + AND a passive grab on the same device and button/ key + combination does not exist on any ancestor of the grab + window, + + • + THEN the device is actively grabbed, as for GrabDevice, + the last-grab time is set to the time at which the + button was pressed (as transmitted in the + DeviceButtonPress event), and the DeviceButtonPress + event is reported. + + The interpretation of the remaining arguments is as for + GrabDevice. The active grab is terminated automatically when + logical state of the device has all buttons released + (independent of the logical state of the modifier keys). + + Note that the logical state of a device (as seen by means of + the X protocol) may lag the physical state if device event + processing is frozen. + + A modifier of AnyModifier is equivalent to issuing the request + for all possible modifier combinations (including the + combination of no modifiers). It is not required that all + modifiers specified have currently assigned keycodes. A button + of AnyButton is equivalent to issuing the request for all + possible buttons. It is not required that the specified button + be assigned to a physical button. + + NULL may be passed for the modifier_device. If the + modifier_device is NULL, the core X keyboard is used as the + modifier_device. + + An Access error is generated if some other client has issued a + GrabDeviceButton with the same device and button combination on + the same window. When using AnyModifier or AnyButton, the + request fails completely and the X server generates a Access + error and no grabs are established if there is a conflicting + grab for any combination. The request has no effect on an + active grab. + + This request cannot be used to grab a button on the X pointer + device. The core GrabButton request should be used for that + purpose. + + To release a passive grab of a button on an extension device, + use UngrabDeviceButton. + + UngrabDeviceButton + device: DEVICE + button: BUTTON or AnyButton + modifiers: SETofKEYMASK or AnyModifier + modifier-device: DEVICE or NULL + grab-window: WINDOW + + Errors: Device, Match, Window, Value, Alloc + + This request is analogous to the core UngrabButton request. It + releases the passive button/key combination on the specified + window if it was grabbed by the client. A modifiers of + AnyModifier is equivalent to issuing the request for all + possible modifier combinations (including the combination of no + modifiers). A button of AnyButton is equivalent to issuing the + request for all possible buttons. This request has no effect on + an active grab. The device must have previously been opened + using the OpenDevice request otherwise a Device error will be + generated. + + NULL may be passed for the modifier_device. If the + modifier_device is NULL, the core X keyboard is used as the + modifier_device. + + This request cannot be used to ungrab a button on the X pointer + device. The core UngrabButton request should be used for that + purpose. + +2.16 Thawing A Device + + To allow further events to be processed when a device has been + frozen, use AllowDeviceEvents. + + AllowDeviceEvents + device: DEVICE + event-mode: {AsyncThisDevice, SyncThisD + evice, AsyncOtherDevices, + ReplayThisdevice, AsyncAll, or SyncAll} + time:TIMESTAMP or CurrentTime + + Errors: Device, Value + + The AllowDeviceEvents request releases some queued events if + the client has caused a device to freeze. The request has no + effect if the specified time is earlier than the last-grab time + of the most recent active grab for the client, or if the + specified time is later than the current X server time. + + The following describes the processing that occurs depending on + what constant you pass to the event-mode argument: + + * If the specified device is frozen by the client, event + processing for that device continues as usual. If the + device is frozen multiple times by the client on behalf + of multiple separate grabs, AsyncThisDevice thaws for + all. AsyncThisDevice has no effect if the specified + device is not frozen by the client, but the device need + not be grabbed by the client. + + * If the specified device is frozen and actively grabbed + by the client, event processing for that device + continues normally until the next button or key event is + reported to the client. At this time, the specified + device again appears to freeze. However, if the reported + event causes the grab to be released, the specified + device does not freeze. SyncThisDevice has no effect if + the specified device is not frozen by the client or is + not grabbed by the client. + + * If the specified device is actively grabbed by the + client and is frozen as the result of an event having + been sent to the client (either from the activation of a + GrabDeviceButton or from a previous AllowDeviceEvents + with mode SyncThisDevice, but not from a Grab), the grab + is released and that event is completely reprocessed. + This time, however, the request ignores any passive + grabs at or above (towards the root) the grab-window of + the grab just released. The request has no effect if the + specified device is not grabbed by the client or if it + is not frozen as the result of an event. + + * If the remaining devices are frozen by the client, event + processing for them continues as usual. If the other + devices are frozen multiple times by the client on + behalf of multiple separate grabs, AsyncOtherDevices + “thaws†for all. AsyncOtherDevices has no effect if the + devices are not frozen by the client, but those devices + need not be grabbed by the client. + + * If all devices are frozen by the client, event + processing (for all devices) continues normally until + the next button or key event is reported to the client + for a grabbed device (button event for the grabbed + device, key or motion event for the device), at which + time the devices again appear to freeze. However, if the + reported event causes the grab to be released, then the + devices do not freeze (but if any device is still + grabbed, then a subsequent event for it will still cause + all devices to freeze). SyncAll has no effect unless all + devices are frozen by the client. If any device is + frozen twice by the client on behalf of two separate + grabs, SyncAll "thaws" for both (but a subsequent freeze + for SyncAll will only freeze each device once). + + * If all devices are frozen by the client, event + processing (for all devices) continues normally. If any + device is frozen multiple times by the client on behalf + of multiple separate grabs, AsyncAll "thaws" for all. + AsyncAll has no effect unless all devices are frozen by + the client. + + AsyncThisDevice, SyncThisDevice, and ReplayThisDevice + have no effect on the processing of events from the + remaining devices. AsyncOtherDevices has no effect on + the processing of events from the specified device. When + the event_mode is SyncAll or AsyncAll, the device + parameter is ignored. + + It is possible for several grabs of different devices + (by the same or different clients) to be active + simultaneously. If a device is frozen on behalf of any + grab, no event processing is performed for the device. + It is possible for a single device to be frozen because + of several grabs. In this case, the freeze must be + released on behalf of each grab before events can again + be processed. + +2.17 Controlling Device Focus + + The current focus window for an extension input device can be + determined using the GetDeviceFocus request. Extension devices + are focused using the SetDeviceFocus request in the same way + that the keyboard is focused using the SetInputFocus request, + except that a device is specified as part of the request. One + additional focus state, FollowKeyboard, is provided for + extension devices. + + To get the current focus state, revert state, and focus time of + an extension device, use GetDeviceFocus. + + GetDeviceFocus + device: DEVICE + => + focus: WINDOW, PointerRoot, FollowKeyboard, or None + revert-to: Parent, PointerRoot, FollowKeyboard, or None + focus-time: TIMESTAMP + + Errors: Device, Match + + This request returns the current focus state, revert-to state, + and last-focus-time of an extension device. + + To set the focus of an extension device, use SetDeviceFocus. + + SetDeviceFocus + device: DEVICE + focus: WINDOW, PointerRoot, FollowKeyboard, or None + revert-to: Parent, PointerRoot, FollowKeyboard, or None + focus-time: TIMESTAMP + + Errors: Device, Window, Value, Match + + This request changes the focus for an extension input device + and the last-focus-change-time. The request has no effect if + the specified time is earlier than the last-focus-change-time + or is later than the current X server time. Otherwise, the + last-focus-change-time is set to the specified time, with + CurrentTime replaced by the current server time. + + The action taken by the server when this request is requested + depends on the value of the focus argument: + + * If the focus argument is None, all input events from + this device will be discarded until a new focus window + is set. In this case, the revert-to argument is ignored. + + * If a window ID is assigned to the focus argument, it + becomes the focus window of the device. If an input + event from the device would normally be reported to this + window or to one of its inferiors, the event is reported + normally. Otherwise, the event is reported relative to + the focus window. + + * If you assign PointerRoot to the focus argument, the + focus window is dynamically taken to be the root window + of whatever screen the pointer is on at each input + event. In this case, the revert-to argument is ignored. + + * If you assign FollowKeyboard to the focus argument, the + focus window is dynamically taken to be the same as the + focus of the X keyboard at each input event. + + The specified focus window must be viewable at the time + of the request (else a Match error). If the focus window + later becomes not viewable, the X server evaluates the + revert-to argument to determine the new focus window. + + * If you assign RevertToParent to the revert-to argument, + the focus reverts to the parent (or the closest viewable + ancestor), and the new revert-to value is taken to be + RevertToNone. + + * If you assign RevertToPointerRoot, + RevertToFollowKeyboard, or RevertToNone to the revert-to + argument, the focus reverts to that value. + + When the focus reverts, the X server generates DeviceFocusIn + and DeviceFocusOut events, but the last-focus-change time is + not affected. + + This request causes the X server to generate DeviceFocusIn and + DeviceFocusOut events. + +2.18 Controlling Device Feedback + + To get the settings of feedbacks on an extension device, use + GetFeedbackControl. This request provides functionality + equivalent to the core GetKeyboardControl and GetPointerControl + functions. It also provides a way to control displays + associated with an input device that are capable of displaying + an integer or string. + + GetFeedbackControl + device: DEVICE + => + num_feedbacks_return: CARD16 + return_value: LISTofFEEDBACKSTATE + + where + + FEEDBACKSTATE: {KbdFeedbackState, PtrFeedbackState, + IntegerFeedbackState, StringFeedbackState, + BellFeedbackState, LedFeedbackState} + + Feedbacks are reported by class. Those feedbacks that are + reported for the core keyboard device are in class KbdFeedback, + and are returned in the KbdFeedbackState structure. The members + of that structure are as follows: + + CLASS Kbd: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + key_click_percent: CARD8 + bell_percent: CARD8 + bell_pitch: CARD16 + bell_duration: CARD16 + led_value: BITMASK + global_auto_repeat: {AutoRepeatModeOn, AutoRepeatModeOff} + auto_repeats: LISTofCARD8] + + Those feedbacks that are equivalent to those reported for the + core pointer are in feedback class PtrFeedback and are reported + in the PtrFeedbackState structure. The members of that + structure are: + + CLASS Ptr: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + accelNumerator: CARD16 + accelDenominator: CARD16 + threshold: CARD16] + + Some input devices provide a means of displaying an integer. + Those devices will support feedback class IntegerFeedback, + which is reported in the IntegerFeedbackState structure. The + members of that structure are: + + CLASS Integer: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + resolution: CARD32 + min-val: INT32 + max-val: INT32] + + Some input devices provide a means of displaying a string. + Those devices will support feedback class StringFeedback, which + is reported in the StringFeedbackState structure. The members + of that structure are: + + CLASS String: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + max_symbols: CARD16 + num_keysyms_supported: CARD16 + keysyms_supported: LISTofKEYSYM] + + Some input devices contain a bell. Those devices will support + feedback class BellFeedback, which is reported in the + BellFeedbackState structure. The members of that structure are: + + CLASS String: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + percent: CARD8 + pitch: CARD16 + duration: CARD16] + + The percent sets the base volume for the bell between 0 (off) + and 100 (loud) inclusive, if possible. Setting to -1 restores + the default. Other negative values generate a Value error. + + The pitch sets the pitch (specified in Hz) of the bell, if + possible. Setting to -1 restores the default. Other negative + values generate a Value error. + + The duration sets the duration (specified in milliseconds) of + the bell, if possible. Setting to -1 restores the default. + Other negative values generate a Value error. + + A bell generator connected with the console but not directly on + the device is treated as if it were part of the device. Some + input devices contain LEDs. Those devices will support feedback + class Led, which is reported in the LedFeedbackState structure. + The members of that structure are: + + CLASS String: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + led_mask: BITMASK + led_value: BITMASK] + + Each bit in led_mask indicates that the corresponding led is + supported by the feedback. At most 32 LEDs per feedback are + supported. No standard interpretation of LEDs is defined. + + This function will fail with a BadMatch error if the device + specified in the request does not support feedbacks. + + Errors: Device, Match + + To change the settings of a feedback on an extension device, + use ChangeFeedbackControl. + + ChangeFeedbackControl + device: DEVICE + feedbackid: CARD8 + value-mask: BITMASK + value: FEEDBACKCONTROL + FEEDBACKCONTROL: {KBDFEEDBACKCONTROL, + PTRFEEDBACKCONTROL, + INTEGERFEEDBACKCONTROL, + STRINGFEEDBACKCONTROL, + BELLFEEDBACKCONTROL, + LEDFEEDBACKCONTROL} + + Errors: Device, Match, Value + + Feedback controls are grouped by class. Those feedbacks that + are equivalent to those supported by the core keyboard are + controlled by feedback class KbdFeedbackClass using the + KbdFeedbackControl structure. The members of that structure + are: + + KBDFEEDBACKCTL + [class: CARD8 + length: CARD16 + feedback id: CARD8 + key_click_percent: INT8 + bell_percent: INT8 + bell_pitch: INT16 + bell_duration: INT16 + led_mask: INT32 + led_value: INT32 + key: KEYCODE + auto_repeat_mode: {AutoRepeatModeOn, AutoRepeatModeOff, + AutoRepeatModeDefault}] + + The key_click_percent sets the volume for key clicks between 0 + (off) and 100 (loud) inclusive, if possible. Setting to -1 + restores the default. Other negative values generate a Value + error. + + If both auto_repeat_mode and key are specified, then the + auto_repeat_mode of that key is changed, if possible. If only + auto_repeat_mode is specified, then the global auto-repeat mode + for the entire keyboard is changed, if possible, without + affecting the per-key settings. It is a Match error if a key is + specified without an auto_repeat_mode. + + The order in which controls are verified and altered is + server-dependent. If an error is generated, a subset of the + controls may have been altered. + + Those feedback controls equivalent to those of the core pointer + are controlled by feedback class PtrFeedbackClass using the + PtrFeedbackControl structure. The members of that structure are + as follows: + + PTRFEEDBACKCTL: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + accelNumerator: INT16 + accelDenominator: INT16 + threshold: INT16] + + The acceleration, expressed as a fraction, is a multiplier for + movement. For example, specifying 3/1 means the device moves + three times as fast as normal. The fraction may be rounded + arbitrarily by the X server. Acceleration only takes effect if + the device moves more than threshold pixels at once and only + applies to the amount beyond the value in the threshold + argument. Setting a value to -1 restores the default. The + values of the do-accel and do-threshold arguments must be + nonzero for the device values to be set. Otherwise, the + parameters will be unchanged. Negative values generate a Value + error, as does a zero value for the accel-denominator argument. + + Some devices are capable of displaying an integer. This is done + using feedback class IntegerFeedbackClass using the + IntegerFeedbackControl structure. The members of that structure + are as follows: + + INTEGERCTL: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + int_to_display: INT32] + + Some devices are capable of displaying an string. This is done + using feedback class StringFeedbackClass using the + StringFeedbackCtl structure. The members of that structure are + as follows: + + STRINGCTL: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + syms_to_display: LISTofKEYSYMS] + + Some devices contain a bell. This is done using feedback class + BellFeedbackClass using the BellFeedbackControl structure. The + members of that structure are as follows: + + BELLCTL: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + percent: INT8 + pitch: INT16 + duration: INT16] + + Some devices contain leds. These can be turned on and off using + the LedFeedbackControl structure. The members of that structure + are as follows: + + LEDCTL: + [class: CARD8 + length: CARD16 + feedback id: CARD8 + led_mask: BITMASK + led_value: BITMASK] + + Errors: Device, Match, Value + +2.20 Ringing a Bell on an Input Device + + To ring a bell on an extension input device, use DeviceBell. + + DeviceBell: + device: DEVICE + feedbackclass: CARD8 + feedbackid: CARD8 + percent: INT8 + + Errors: Device, Value + + This request is analogous to the core Bell request. It rings + the specified bell on the specified input device feedback, + using the specified volume. The specified volume is relative to + the base volume for the feedback. If the value for the percent + argument is not in the range -100 to 100 inclusive, a Value + error results. The volume at which the bell rings when the + percent argument is nonnegative is: + + base - [(base * percent) / 100] + percent + + The volume at which the bell rings when the percent argument is + negative is: + + base + [(base * percent) / 100] + + To change the base volume of the bell, use + ChangeFeedbackControl request. + +Controlling Device Encoding + + To get the keyboard mapping of an extension device that has + keys, use GetDeviceKeyMapping. + + GetDeviceKeyMapping + device: DEVICE + first-keycode: KEYCODE + count: CARD8 + => + keysyms-per-keycode: CARD8 + keysyms: LISTofKEYSYM + + Errors: Device, Match, Value + + This request returns the symbols for the specified number of + keycodes for the specified extension device, starting with the + specified keycode. The first-keycode must be greater than or + equal to min-keycode as returned in the connection setup (else + a Value error), and + + first-keycode + count - 1 + + must be less than or equal to max-keycode as returned in the + connection setup (else a Value error). The number of elements + in the keysyms list is + + count * keysyms-per-keycode + + and KEYSYM number N (counting from zero) for keycode K has an + index (counting from zero) of + + (K - first-keycode) * keysyms-per-keycode + N + + in keysyms. The keysyms-per-keycode value is chosen arbitrarily + by the server to be large enough to report all requested + symbols. A special KEYSYM value of NoSymbol is used to fill in + unused elements for individual keycodes. + + If the specified device has not first been opened by this + client via OpenDevice, or if that device does not support input + class Keys, this request will fail with a Device error. + + To change the keyboard mapping of an extension device that has + keys, use ChangeDeviceKeyMapping. + + ChangeDeviceKeyMapping + device: DEVICE + first-keycode: KEYCODE + keysyms-per-keycode: CARD8 + keysyms: LISTofKEYSYM + num_codes: CARD8 + + Errors: Device, Match, Value, Alloc + + This request is analogous to the core ChangeKeyMapping request. + It defines the symbols for the specified number of keycodes for + the specified extension device. If the specified device has not + first been opened by this client via OpenDevice, or if that + device does not support input class Keys, this request will + fail with a Device error. + + The number of elements in the keysyms list must be a multiple + of keysyms_per_keycode. Otherwise, ChangeDeviceKeyMapping + generates a Length error. The specified first_keycode must be + greater than or equal to the min_keycode value returned by the + ListInputDevices request, or this request will fail with a + Value error. In addition, if the following expression is not + less than the max_keycode value returned by the + ListInputDevices request, the request will fail with a Value + error: + + first_keycode + (num_codes / keysyms_per_keycode) - 1 + + To obtain the keycodes that are used as modifiers on an + extension device that has keys, use GetDeviceModifierMapping. + + GetDeviceModifierMapping + device: DEVICE + => + keycodes-per-modifier: CARD8 + keycodes: LISTofKEYCODE + + Errors: Device, Match + + This request is analogous to the core GetModifierMapping + request. This request returns the keycodes of the keys being + used as modifiers. The number of keycodes in the list is + 8*keycodes-per-modifier. The keycodes are divided into eight + sets, with each set containing keycodes-per-modifier elements. + The sets are assigned in order to the modifiers Shift, Lock, + Control, Mod1, Mod2, Mod3, Mod4, and Mod5. The + keycodes-per-modifier value is chosen arbitrarily by the + server; zeroes are used to fill in unused elements within each + set. If only zero values are given in a set, the use of the + corresponding modifier has been disabled. The order of keycodes + within each set is chosen arbitrarily by the server. + + To set which keycodes that are to be used as modifiers for an + extension device, use SetDeviceModifierMapping. + + SetDeviceModifierMapping + device: DEVICE + keycodes-per-modifier: CARD8 + keycodes: LISTofKEYCODE + => + status: {Success, Busy, Failed} + + Errors: Device, Match, Value, Alloc + + This request is analogous to the core SetModifierMapping + request. This request specifies the keycodes (if any) of the + keys to be used as modifiers. The number of keycodes in the + list must be 8*keycodes-per-modifier (else a Length error). The + keycodes are divided into eight sets, with the sets, with each + set containing keycodes-per-modifier elements. The sets are + assigned in order to the modifiers Shift, Lock, Control, Mod1, + Mod2, Mod3, Mod4, and Mod5. Only non-zero keycode values are + used within each set; zero values are ignored. All of the + non-zero keycodes must be in the range specified by min-keycode + and max-keycode in the ListInputDevices request (else a Value + error). The order of keycodes within a set does not matter. If + no non-zero values are specified in a set, the use of the + corresponding modifier is disabled, and the modifier bit will + always be zero. Otherwise, the modifier bit will be one + whenever at least one of the keys in the corresponding set is + in the down position. + + A server can impose restrictions on how modifiers can be + changed (for example, if certain keys do not generate up + transitions in hardware or if multiple keys per modifier are + not supported). The status reply is Failed if some such + restriction is violated, and none of the modifiers are changed. + + If the new non-zero keycodes specified for a modifier differ + from those currently defined, and any (current or new) keys for + that modifier are logically in the down state, then the status + reply is Busy, and none of the modifiers are changed. + + This request generates a DeviceMappingNotify event on a Success + status. The DeviceMappingNotify event will be sent only to + those clients that have expressed an interest in receiving that + event via the XSelectExtensionEvent request. + + A X server can impose restrictions on how modifiers can be + changed, for example, if certain keys do not generate up + transitions in hardware or if multiple modifier keys are not + supported. If some such restriction is violated, the status + reply is MappingFailed , and none of the modifiers are changed. + If the new keycodes specified for a modifier differ from those + currently defined and any (current or new) keys for that + modifier are in the logically down state, the status reply is + MappingBusy, and none of the modifiers are changed. + +2.20 Controlling Button Mapping + + These requests are analogous to the core GetPointerMapping and + ChangePointerMapping requests. They allow a client to determine + the current mapping of buttons on an extension device, and to + change that mapping. + + To get the current button mapping for an extension device, use + GetDeviceButtonMapping. + + GetDeviceButtonMapping + device: DEVICE + nmap: CARD8 + => + map_return: LISTofCARD8 + + Errors: Device, Match + + The GetDeviceButtonMapping function returns the current mapping + of the buttons on the specified device. Elements of the list + are indexed starting from one. The length of the list indicates + the number of physical buttons. The nominal mapping is the + identity mapping map[i]=i. + + nmap indicates the number of elements in the map_return array. + Only the first nmap entries will be copied by the library into + the map_return array. + + To set the button mapping for an extension device, use + SetDeviceButtonMapping. + + SetDeviceButtonMapping + device: DEVICE + map: LISTofCARD8 + nmap: CARD8 + => + status: CARD8 + + Errors: Device, Match, Value + + The SetDeviceButtonMapping function sets the mapping of the + specified device and causes the X server to generate a + DeviceMappingNotify event on a status of MappingSuccess. + Elements of the list are indexed starting from one. The length + of the list, specified in nmap, must be the same as + GetDeviceButtonMapping would return. Otherwise, + SetDeviceButtonMapping generates a Value error. A zero element + disables a button, and elements are not restricted in value by + the number of physical buttons. If any of the buttons to be + altered are in the down state, the status reply is MappingBusy + and the mapping is not changed. + + In servers supporting XI 1.x, no two elements can have the same + nonzero value. Otherwise, this function generates a Value + error. + +2.21 Obtaining The State Of A Device + + To obtain vectors that describe the state of the keys, buttons + and valuators of an extension device, use QueryDeviceState. + + QueryDeviceState + device: DEVICE + => + device-id: CARD8 + data: LISTofINPUTCLASS + + where + + INPUTCLASS: {VALUATOR, BUTTON, KEY} + CLASS VALUATOR: + [class: CARD8 + num_valuators: CARD8 + mode: CARD8 + #x01 device mode (0 = Relative, 1 = Absolute) + #x02 proximity state (0 = InProximity, 1 = OutOfProximity) + valuators: LISTofINT32] + CLASS BUTTON: + [class: CARD8 + num_buttons: CARD8 + buttons: LISTofCARD8] + CLASS KEY: + [class: CARD8 + num_keys: CARD8 + keys: LISTofCARD8] + + Errors: Device + + The QueryDeviceState request returns the current logical state + of the buttons, keys, and valuators on the specified input + device. The buttons and keys arrays, byte N (from 0) contains + the bits for key or button 8N to 8N+7 with the least + significant bit in the byte representing key or button 8N. + + If the device has valuators, a bit in the mode field indicates + whether the device is reporting Absolute or Relative data. If + it is reporting Absolute data, the valuators array will contain + the current value of the valuators. If it is reporting Relative + data, the valuators array will contain undefined data. + + If the device reports proximity information, a bit in the mode + field indicates whether the device is InProximity or + OutOfProximity. + +2.22 Listing Device Properties + + Introduced with XI 1.5 + + ListDeviceProperties + deviceid: CARD8 + => + nAtoms: CARD16 + Atoms: LISTofATOM + + Errors: Device + + Each device can store an arbitrary number of properties. These + properties can be allocated by either the client or the driver. + The client can change device properties and the server + guarantees that the device driver is notified about a change of + the device's properties. + + ListDeviceProperties returns all properties of a device. The + client is expected to retrieve details about the properties it + is interested in separately. + +2.23 Getting a Device Property + + Introduced with XI 1.5 + + GetDeviceProperty: + property: ATOM + type: ATOM + longOffset: CARD32 + longLength: CARD32 + deviceid: CARD8 + delete: BOOL + => + propertyType: ATOM + bytesAfter: CARD32 + nItems: CARD32 + format: CARD8 + deviceid: CARD8 + data: [LISTofCARD8] + + Errors: Atom, Device, Value, Access + + Retrieve the value for a property. If the property does not + exist, propertyType is None and all other fields are undefined. + + If type is not AnyPropertyType and does not match the + property's actual type, the propertyType, bytesAfter, and + format are returned but not the actual data. + + longOffset and longLength specify the offset and length + respectively in 32-bit multiples of the data to retrieve. + + If delete is True, the property is deleted after querying its + data. If the property cannot be deleted, a BadAccess error is + returned. + + propertyType returns the atom identifier that defines the + actual type of the property. + + If bytesAfter is non-zero, it specifies the number of data + 4-byte units after the retrieved chunk of data. + + format specifies whether the data should be viewed as a list of + 8-bit, 16-bit, or 32-bit quantities. Possible values are 8, 16, + and 32. This information allows the X server to correctly + perform byte-swap operations as necessary. + + nItem specifies the number of 8-bit, 16-bit, or 32-bit items + returned after the request. + +2.24 Changing a Device Property + + Introduced with XI 1.5 + + ChangeDeviceProperty: + property: ATOM + type: ATOM + deviceid: CARD8 + format: CARD8 + mode: CARD8 + nUnits: CARD32 + + Errors: Atom, Device, Value, Match, Access + + Changes the value of a specified property. + + The type specifies the atom identifier that defines the type of + the property. If mode is not PropModeReplace, the type must + match the current type of the property or a BadMatch error is + returned. + + format specifies whether the data should be viewed as a list of + 8-bit, 16-bit, or 32-bit quantities. Possible values are 8, 16, + and 32. This information allows the X server to correctly + perform byte-swap operations as necessary. + + If mode is PropModeReplace, a preexising value for this + property is replaced with the new value. If mode is + PropModePrepend or PropModeAppend, the value is prepended or + appended, respectively, to the current value of the property. + + nUnits specifies the number of 8-bit, 16-bit, or 32-bit items + supplied after the reply. + + Changing a device property results in a + DevicePropertyNotifyEvent being sent to all clients. + +2.25 Deleting a Device Property + + Introduced with XI 1.5 + + DeleteDeviceProperty: + property: ATOM + deviceid: CARD8 + + Errors: Atom, Device, Match, Access. + + Deletes the specified property. If the property cannot be + deleted by the client, a BadAccess error is returned. + +3. Events + + The input extension creates input events analogous to the core + input events. These extension input events are generated by + manipulating one of the extension input devices. + +3.1 Button, Key, and Motion Events + + DeviceKeyPress + DeviceKeyRelease + DeviceButtonPress, + DeviceButtonRelease + DeviceMotionNotify + device: CARD8 + root, event: WINDOW + child: Window or None + same-screen: BOOL + root-x, root-y, event-x, event-y: INT16 + detail: <see below> + state: SETofKEYBUTMASK + time: TIMESTAMP + + These events are generated when a key, button, or valuator + logically changes state. The generation of these logical + changes may lag the physical changes, if device event + processing is frozen. Note that DeviceKeyPress and + DeviceKeyRelease are generated for all keys, even those mapped + to modifier bits. The “source†of the event is the window the + pointer is in. The window with respect to which the event is + normally reported is found by looking up the hierarchy + (starting with the source window) for the first window on which + any client has selected interest in the event. The actual + window used for reporting can be modified by active grabs and + by the focus window.The window the event is reported with + respect to is called the “event†window. + + The root is the root window of the “source†window, and root-x + and root-y are the pointer coordinates relative to root's + origin at the time of the event. Event is the “event†window. + If the event window is on the same screen as root, then event-x + and event-y are the pointer coordinates relative to the event + window's origin. Otherwise, event-x and event-y are zero. If + the source window is an inferior of the event window, then + child is set to the child of the event window that is an + ancestor of (or is) the source window. Otherwise, it is set to + None. + + The state component gives the logical state of the buttons on + the X pointer and modifier keys on the core X keyboard just + before the event. + + The detail component type varies with the event type: + Event Component + DeviceKeyPress KEYCODE + DeviceKeyRelease KEYCODE + DeviceButtonPress BUTTON + DeviceButtonRelease BUTTON + DeviceMotionNotify { Normal , Hint } + + The granularity of motion events is not guaranteed, but a + client selecting for motion events is guaranteed to get at + least one event when a valuator changes. If DeviceMotionHint is + selected, the server is free to send only one + DeviceMotionNotify event (with detail Hint) to the client for + the event window, until either a key or button changes state, + the pointer leaves the event window, or the client issues a + QueryDeviceState or GetDeviceMotionEvents request. + +3.2 DeviceValuator Event + + DeviceValuator + device: CARD8 + device_state: SETofKEYBUTMASK + num_valuators: CARD8 + first_valuator: CARD8 + valuators: LISTofINT32 + + DeviceValuator events are generated to contain valuator + information for which there is insufficient space in DeviceKey, + DeviceButton, DeviceMotion, and Proximity wire events. For + events of these types, a second event of type DeviceValuator + follows immediately. The library combines these events into a + single event that a client can receive via XNextEvent. + DeviceValuator events are not selected for by clients, they + only exist to contain information that will not fit into some + event selected by clients. + + The device_state component gives the state of the buttons and + modifiers on the device generating the event. + + Extension motion devices may report motion data for a variable + number of axes. The valuators array contains the values of all + axes reported by the device. If more than 6 axes are reported, + more than one DeviceValuator event will be sent by the server, + and more than one DeviceKey, DeviceButton, DeviceMotion, or + Proximity event will be reported by the library. Clients should + examine the corresponding fields of the event reported by the + library to determine the total number of axes reported, and the + first axis reported in the current event. Axes are numbered + beginning with zero. + + For Button, Key and Motion events on a device reporting + absolute motion data the current value of the device's + valuators is reported. For devices that report relative data, + Button and Key events may be followed by a DeviceValuator event + that contains 0s in the num_valuators field. In this case, only + the device_state component will have meaning. + +3.3 Device Focus Events + + DeviceFocusIn + DeviceFocusOut + device: CARD8 + time: TIMESTAMP + event: WINDOW + mode: { Normal, WhileGrabbed, Grab, Ungrab} + detail: { Ancestor, Virtual, Inferior, Nonlinear, + NonlinearVirtual, Pointer, PointerRoot, None} + + These events are generated when the input focus changes and are + reported to clients selecting DeviceFocusChange for the + specified device and window. Events generated by SetDeviceFocus + when the device is not grabbed have mode Normal. Events + generated by SetDeviceFocus when the device is grabbed have + mode WhileGrabbed. Events generated when a device grab actives + have mode Grab, and events generated when a device grab + deactivates have mode Ungrab. + + All DeviceFocusOut events caused by a window unmap are + generated after any UnmapNotify event, but the ordering of + DeviceFocusOut with respect to generated EnterNotify, + LeaveNotify, VisibilityNotify and Expose events is not + constrained. + + DeviceFocusIn and DeviceFocusOut events are generated for focus + changes of extension devices in the same manner as focus events + for the core devices are generated. + +3.4 Device State Notify Event + + DeviceStateNotify + time: TIMESTAMP + device: CARD8 + num_keys: CARD8 + num_buttons: CARD8 + num_valuators: CARD8 + classes_reported: CARD8 {SetOfDeviceMode | SetOfInputClass} + SetOfDeviceMode: + #x80 ProximityState 0 = InProxmity, 1 = OutOfProximity + #x40 Device Mode (0 = Relative, 1 = Absolute) + SetOfInputClass: #x04 reporting valuators + #x02 reporting buttons + #x01 reporting keys + buttons: LISTofCARD8 + keys: LISTofCARD8 + valuators: LISTofCARD32 + + This event reports the state of the device just as in the + QueryDeviceState request. This event is reported to clients + selecting DeviceStateNotify for the device and window and is + generated immediately after every EnterNotify and + DeviceFocusIn. If the device has no more than 32 buttons, no + more than 32 keys, and no more than 3 valuators, This event can + report the state of the device. If the device has more than 32 + buttons, the event will be immediately followed by a + DeviceButtonStateNotify event. If the device has more than 32 + keys, the event will be followed by a DeviceKeyStateNotify + event. If the device has more than 3 valuators, the event will + be followed by one or more DeviceValuator events. + +3.5 Device KeyState and ButtonState Notify Events + + DeviceKeyStateNotify + device: CARD8 + keys: LISTofCARD8 + DeviceButtonStateNotify + device: CARD8 + buttons: LISTofCARD8 + + These events contain information about the state of keys and + buttons on a device that will not fit into the + DeviceStateNotify wire event. These events are not selected by + clients, rather they may immediately follow a DeviceStateNotify + wire event and be combined with it into a single + DeviceStateNotify client event that a client may receive via + XNextEvent. + +3.6 DeviceMappingNotify Event + + DeviceMappingNotify + time: TIMESTAMP + device: CARD8 + request: CARD8 + first_keycode: CARD8 + count: CARD8 + + This event reports a change in the mapping of keys, modifiers, + or buttons on an extension device. This event is reported to + clients selecting DeviceMappingNotify for the device and window + and is generated after every client SetDeviceButtonMapping, + ChangeDeviceKeyMapping, or ChangeDeviceModifierMapping request. + +3.7 ChangeDeviceNotify Event + + ChangeDeviceNotify + device: CARD8 + time: TIMESTAMP + request: CARD8 + + This event reports a change in the physical device being used + as the core X keyboard or X pointer device. ChangeDeviceNotify + events are reported to clients selecting ChangeDeviceNotify for + the device and window and is generated after every client + ChangeKeyboardDevice or ChangePointerDevice request. + +3.7 Proximity Events + + ProximityIn + ProximityOut + device: CARD8 + root, event: WINDOW + child: Window or None + same-screen: BOOL + root-x, root-y, event-x, event-y: INT16 + state: SETofKEYBUTMASK + time: TIMESTAMP + device-state: SETofKEYBUTMASK + axis-count: CARD8 + first-axis: CARD8 + axis-data: LISTofINT32 + + These events are generated by some devices (such as graphics + tablets or touchscreens) to indicate that a stylus has moved + into or out of contact with a positional sensing surface. + + The “source†of the event is the window the pointer is in. The + window with respect to which the event is normally reported is + found by looking up the hierarchy (starting with the source + window) for the first window on which any client has selected + interest in the event. The actual window used for reporting can + be modified by active grabs and by the focus window.The window + the event is reported with respect to is called the “event†+ window. + + The root is the root window of the “source†window, and root-x + and root-y are the pointer coordinates relative to root's + origin at the time of the event. Event is the “event†window. + If the event window is on the same screen as root, then event-x + and event-y are the pointer coordinates relative to the event + window's origin. Otherwise, event-x and event-y are zero. If + the source window is an inferior of the event window, then + child is set to the child of the event window that is an + ancestor of (or is) the source window. Otherwise, it is set to + None. The state component gives the logical state of the + buttons on the core X pointer and modifier keys on the core X + keyboard just before the event. The device-state component + gives the state of the buttons and modifiers on the device + generating the event. + +3.8 DevicePresenceEvents + + Introduced with XI 1.4. + + DevicePresence + time: TIMESTAMP + devchange: BYTE + #x00: DeviceAdded + #x01: DeviceRemoved + #x02: DeviceEnabled + #x03: DeviceDisabled + #x04: DeviceUnrecoverable + #x05: DeviceControlChanged + deviceid: BYTE + control: CARD16 + + DevicePresence events are sent when the server adds or removes, + or enables or disables an input device. The client is expected + to query the server for the list of input devices using the + ListInputDevices request to obtain the updated list of input + devices. DevicePresence events are also sent when a control on + the device has been changed. + + The devchange field specifies the type of operation. In case of + DeviceAdded, a new device has been added to the server, but + this device does not yet send events. If devchange is set to + DeviceEnabled, the device is enabled and will generate events. + If the field is DeviceDisabled or DeviceRemoved, the given + device is disabled and stops sending events or was removed from + the server, respectively. If the field is DeviceUnrecoverable, + an IO-error has occured on the device and the device is + forcibly disabled and removed by the server. If devchange is + DeviceControlChanged, control specifies the type of control + that has been changed. + +3.9 DevicePropertyNotifyEvent + + Introduced with XI 1.5. + + DevicePropertyNotifyEvent + deviceid: CARD8 + state: CARD8 + time: TIMESTAMP + atom: ATOM + + A DevicePropertyNotifyEvent is sent to all clients when a + property on the device is created, deleted, or changes value. + + The deviceid specifies the device which's property has been + modified. + + The atom specifies the named identifier of the property that + has been altered. + + If state is PropertyNewValue, the given property has a new + value or has been newly created. If state is PropertyDeleted, + the given property has been deleted. diff --git a/X11/extensions/compositeproto.h b/X11/extensions/compositeproto.h index c57628c9d..2e392e2eb 100644 --- a/X11/extensions/compositeproto.h +++ b/X11/extensions/compositeproto.h @@ -51,6 +51,7 @@ #define Window CARD32 #define Region CARD32 +#define Pixmap CARD32 /* * requests and replies @@ -187,5 +188,6 @@ typedef struct { #undef Window #undef Region +#undef Pixmap #endif /* _COMPOSITEPROTO_H_ */ diff --git a/include/dix-config.h b/include/dix-config.h index 75880a1ff..095adc7ae 100644 --- a/include/dix-config.h +++ b/include/dix-config.h @@ -469,7 +469,7 @@ #undef pid_t /* Build Rootless code */ -#define ROOTLESS 1 +#undef ROOTLESS /* Define to 1 if unsigned long is 64 bits. */ #undef _XSERVER64 diff --git a/libX11/ChangeLog b/libX11/ChangeLog index 2d0b18eba..79e6b707e 100644 --- a/libX11/ChangeLog +++ b/libX11/ChangeLog @@ -1,3 +1,205 @@ +commit d54caf1c9c55af8247621b7ba6afb20b23699839 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 10:59:08 2009 +1000 + + libX11 1.3 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit dd201bcf9e7f8863b7ef32273a5ef021678133c1 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 12:10:29 2009 +1000 + + nls: remove duplicate Compose sequences from pt_BR.UTF-8 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit a293ae9e83739067fc92db1a39c262857bc2283e +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Sep 25 11:19:41 2009 +1000 + + Add XF86TouchpadToggle to XKeysymDB + + Lenovo laptops provide a key to enable or disable the touchpad and the + trackstick. This key is usually located on Fn + F8. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Acked-by: Adam Jackson <ajax@redhat.com> + +commit 69839f8903a24eab08f17a781b3797fb64dce9cf +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Sun Sep 27 10:34:16 2009 -0700 + + Bug 24173: libX11 from git fails to build with automake older then 1.11 + + AM_CONDITIONAL must come *before* the AC_OUTPUT that creates the + Makefiles, instead of after. + <http://bugs.freedesktop.org/show_bug.cgi?id=24173> + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit f5effd041f58ef07703cca2b4f396758811e1eec +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Wed Apr 15 10:59:23 2009 -0700 + + Resolve conflicting Compose sequences in iso8859-2, el_GR.UTF-8 & pt_BR.UTF-8 + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 3843778358d3a0cd6a2d07dba5dd061248053ac9 +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Wed Apr 15 10:56:09 2009 -0700 + + Add perl script to check for duplicate or conflicting compose file entries + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 19cc5e1fa17a285045662820a8b4de2a0f9a194d +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Sep 18 17:10:04 2009 -0700 + + Use make rules instead of shell for loops to generate shadow man pages + + Allows parallel make and simpler build logs/error reporting + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 7dabcac973d0b6692a3cd62bd6d8e0467b24200b +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Sep 18 16:58:53 2009 -0700 + + Add AM_SILENT_RULES support for cpp rules for man & nls files + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit bfa19cddd8546b4930a773f3bbd81137c362d82b +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Sep 18 16:58:16 2009 -0700 + + Update to using xorg-macros 1.3 & XORG_DEFAULT_OPTIONS + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 51396066c8003a96a6399c9a4bed2a81e512b582 +Author: Mikko Niskanen <mikko.niskanen@iki.fi> +Date: Fri Sep 4 10:11:15 2009 +1000 + + Fix wrong typedef on HP-UX (#18998) + + shl_dt doesn't exist, the type is shl_t. + + X.Org Bug 18998 <http://bugs.freedesktop.org/show_bug.cgi?id=18998> + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit 615220a312b9430a580fe6dcf51703c6ef244f66 +Author: Paul Bender <pebender@gmail.com> +Date: Fri Sep 4 09:57:10 2009 +1000 + + Don't require xdmcp in configure.ac (#22583) + + X.Org Bug 22583 <http://bugs.freedesktop.org/show_bug.cgi?id=22583> + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit 20f9ecd86ad2a9ac6966f7eee32234cb5ef77c29 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Sep 3 14:02:44 2009 +1000 + + man: fix parameters to XkbAllocGeomOverlay{Rows|Keys} (#23499) + + X.Org Bug 23499 <http://bugs.freedesktop.org/show_bug.cgi?id=23499> + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit c2814a614dc4d9409bfa0f44c18bfd69ad7f7b85 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Sep 3 12:05:25 2009 +1000 + + man: XQueryTree may return BadWindow. (#23416) + + X.Org Bug 23416 <http://bugs.freedesktop.org/show_bug.cgi?id=XXX> + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit dbe98d456ccc6eeca9fa3e241a3db0a4d83c5a65 +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Aug 28 23:07:58 2009 +0800 + + Fix version tag in .TH line of several XKB man pages + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit bf24400936c10af6f5aa0c75cfe2207ab9b680b4 +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Aug 28 23:04:38 2009 +0800 + + XkbSetDeviceButtonActions.man: remove non-existent actions argument + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 53affa9335116f2d367f041e6502a411d4619e47 +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Aug 28 23:00:17 2009 +0800 + + XkbQueryExtension.man: Arguments should be pointers + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 6233948885acc5873a5abddfff235afec555f3c2 +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Aug 28 22:53:03 2009 +0800 + + XkbSAActionSetCtrls.man: Fix typo in formatting macro + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit 28a9ca57cdec4aa9ca92322f963b01f0c2daf47a +Author: Alan Coopersmith <alan.coopersmith@sun.com> +Date: Fri Aug 28 22:49:31 2009 +0800 + + Convert Xkb API man pages to ANSI prototypes + + Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com> + +commit fa2eecca85baab9616f7143cc1a853a594b4a90c +Author: James Cloos <cloos@jhcloos.com> +Date: Mon Aug 24 06:35:17 2009 -0400 + + Add some (Serbian) Cyrillic NFD sequences. + + A number of characters in use in the various countries which use the + Cyrillic script do not appear as pre-composed characters in The UCS + or Unicode; they are only available as combining-character sequences. + + This commit adds support for using (prefix) dead keys and Multi_key- + initiated sequences to enter a number of these combining-character + sequences. This ensures that users can enter these scripts even + when using the current Cyrillic keymaps, which lack support for + the combining characters. + + Please see the discussions on the xkb mailing list. + + Signed-off-by: James Cloos <cloos@jhcloos.com> + +commit d1bdc909f9246119696c8b0d9afb7bd8afb71b60 +Author: Julien Cristau <jcristau@debian.org> +Date: Wed Aug 5 18:14:23 2009 +0200 + + man/xkb: delete spurious newline in .TH headers + +commit ee723b83b24682db833a2f0abd96cd319b8a62af +Author: Julien Cristau <jcristau@debian.org> +Date: Wed Aug 5 16:45:19 2009 +0200 + + man: use __libmansuffix__ instead of 3X11 for references to other pages + +commit 595e204feb82c798a92eea41fea03be6476ac181 +Author: Julien Cristau <jcristau@debian.org> +Date: Wed Aug 5 16:43:36 2009 +0200 + + man/xkb: use __libmansuffix__ instead of hardcoding 3Xkb for manpage sections + commit 9da7e230d5320e1556ad2084fcd06ee7994385ea Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Wed Aug 5 14:15:02 2009 +1000 diff --git a/libX11/Makefile.in b/libX11/Makefile.in index 29b55f01f..183297dd5 100644 --- a/libX11/Makefile.in +++ b/libX11/Makefile.in @@ -54,6 +54,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = x11.pc x11-xcb.pc CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -133,6 +139,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -209,6 +216,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/aclocal.m4 b/libX11/aclocal.m4 index 52271427a..f3a50b526 100644 --- a/libX11/aclocal.m4 +++ b/libX11/aclocal.m4 @@ -8124,681 +8124,6 @@ else fi[]dnl ])# PKG_CHECK_MODULES -dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. -dnl -dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved. -dnl -dnl Permission is hereby granted, free of charge, to any person obtaining a -dnl copy of this software and associated documentation files (the -dnl "Software"), to deal in the Software without restriction, including -dnl without limitation the rights to use, copy, modify, merge, publish, -dnl distribute, and/or sell copies of the Software, and to permit persons -dnl to whom the Software is furnished to do so, provided that the above -dnl copyright notice(s) and this permission notice appear in all copies of -dnl the Software and that both the above copyright notice(s) and this -dnl permission notice appear in supporting documentation. -dnl -dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL -dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING -dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, -dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION -dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -dnl -dnl Except as contained in this notice, the name of a copyright holder -dnl shall not be used in advertising or otherwise to promote the sale, use -dnl or other dealings in this Software without prior written authorization -dnl of the copyright holder. - -# XORG_MACROS_VERSION(required-version) -# ------------------------------------- -# Minimum version: 1.1.0 -# -# If you're using a macro added in Version 1.1 or newer, include this in -# your configure.ac with the minimum required version, such as: -# XORG_MACROS_VERSION(1.1) -# -# To ensure that this macro is defined, also add: -# m4_ifndef([XORG_MACROS_VERSION], -# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])]) -# -# -# See the "minimum version" comment for each macro you use to see what -# version you require. -m4_defun([XORG_MACROS_VERSION],[ -m4_define([vers_have], [1.2.2]) -m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) -m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) -m4_if(m4_cmp(maj_have, maj_needed), 0,, - [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])]) -m4_if(m4_version_compare(vers_have, [$1]), -1, - [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])]) -m4_undefine([vers_have]) -m4_undefine([maj_have]) -m4_undefine([maj_needed]) -]) # XORG_MACROS_VERSION - -# XORG_PROG_RAWCPP() -# ------------------ -# Minimum version: 1.0.0 -# -# Find cpp program and necessary flags for use in pre-processing text files -# such as man pages and config files -AC_DEFUN([XORG_PROG_RAWCPP],[ -AC_REQUIRE([AC_PROG_CPP]) -AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], - [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) - -# Check for flag to avoid builtin definitions - assumes unix is predefined, -# which is not the best choice for supporting other OS'es, but covers most -# of the ones we need for now. -AC_MSG_CHECKING([if $RAWCPP requires -undef]) -AC_LANG_CONFTEST([Does cpp redefine unix ?]) -if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - AC_MSG_RESULT([no]) -else - if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - RAWCPPFLAGS=-undef - AC_MSG_RESULT([yes]) - # under Cygwin unix is still defined even with -undef - elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - RAWCPPFLAGS="-undef -ansi" - AC_MSG_RESULT([yes, with -ansi]) - else - AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) - fi -fi -rm -f conftest.$ac_ext - -AC_MSG_CHECKING([if $RAWCPP requires -traditional]) -AC_LANG_CONFTEST([Does cpp preserve "whitespace"?]) -if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then - AC_MSG_RESULT([no]) -else - if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then - RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" - AC_MSG_RESULT([yes]) - else - AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) - fi -fi -rm -f conftest.$ac_ext -AC_SUBST(RAWCPPFLAGS) -]) # XORG_PROG_RAWCPP - -# XORG_MANPAGE_SECTIONS() -# ----------------------- -# Minimum version: 1.0.0 -# -# Determine which sections man pages go in for the different man page types -# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. -# Not sure if there's any better way than just hardcoding by OS name. -# Override default settings by setting environment variables - -AC_DEFUN([XORG_MANPAGE_SECTIONS],[ -AC_REQUIRE([AC_CANONICAL_HOST]) - -if test x$APP_MAN_SUFFIX = x ; then - APP_MAN_SUFFIX=1 -fi -if test x$APP_MAN_DIR = x ; then - APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' -fi - -if test x$LIB_MAN_SUFFIX = x ; then - LIB_MAN_SUFFIX=3 -fi -if test x$LIB_MAN_DIR = x ; then - LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' -fi - -if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; - esac -fi -if test x$FILE_MAN_DIR = x ; then - FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' -fi - -if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; - esac -fi -if test x$MISC_MAN_DIR = x ; then - MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' -fi - -if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; - esac -fi -if test x$DRIVER_MAN_DIR = x ; then - DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' -fi - -if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; - esac -fi -if test x$ADMIN_MAN_DIR = x ; then - ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' -fi - - -AC_SUBST([APP_MAN_SUFFIX]) -AC_SUBST([LIB_MAN_SUFFIX]) -AC_SUBST([FILE_MAN_SUFFIX]) -AC_SUBST([MISC_MAN_SUFFIX]) -AC_SUBST([DRIVER_MAN_SUFFIX]) -AC_SUBST([ADMIN_MAN_SUFFIX]) -AC_SUBST([APP_MAN_DIR]) -AC_SUBST([LIB_MAN_DIR]) -AC_SUBST([FILE_MAN_DIR]) -AC_SUBST([MISC_MAN_DIR]) -AC_SUBST([DRIVER_MAN_DIR]) -AC_SUBST([ADMIN_MAN_DIR]) -]) # XORG_MANPAGE_SECTIONS - -# XORG_CHECK_LINUXDOC -# ------------------- -# Minimum version: 1.0.0 -# -# Defines the variable MAKE_TEXT if the necessary tools and -# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. -# Whether or not the necessary tools and files are found can be checked -# with the AM_CONDITIONAL "BUILD_LINUXDOC" -AC_DEFUN([XORG_CHECK_LINUXDOC],[ -if test x$XORG_SGML_PATH = x ; then - XORG_SGML_PATH=$prefix/share/sgml -fi -HAVE_DEFS_ENT= - -if test x"$cross_compiling" = x"yes" ; then - HAVE_DEFS_ENT=no -else - AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) -fi - -AC_PATH_PROG(LINUXDOC, linuxdoc) -AC_PATH_PROG(PS2PDF, ps2pdf) - -AC_MSG_CHECKING([Whether to build documentation]) - -if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then - BUILDDOC=yes -else - BUILDDOC=no -fi - -AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) - -AC_MSG_RESULT([$BUILDDOC]) - -AC_MSG_CHECKING([Whether to build pdf documentation]) - -if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then - BUILDPDFDOC=yes -else - BUILDPDFDOC=no -fi - -AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) - -AC_MSG_RESULT([$BUILDPDFDOC]) - -MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt" -MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" -MAKE_PDF="$PS2PDF" -MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" - -AC_SUBST(MAKE_TEXT) -AC_SUBST(MAKE_PS) -AC_SUBST(MAKE_PDF) -AC_SUBST(MAKE_HTML) -]) # XORG_CHECK_LINUXDOC - -# XORG_CHECK_DOCBOOK -# ------------------- -# Minimum version: 1.0.0 -# -# Checks for the ability to build output formats from SGML DocBook source. -# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" -# indicates whether the necessary tools and files are found and, if set, -# $(MAKE_XXX) blah.sgml will produce blah.xxx. -AC_DEFUN([XORG_CHECK_DOCBOOK],[ -if test x$XORG_SGML_PATH = x ; then - XORG_SGML_PATH=$prefix/share/sgml -fi -HAVE_DEFS_ENT= -BUILDTXTDOC=no -BUILDPDFDOC=no -BUILDPSDOC=no -BUILDHTMLDOC=no - -AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) - -AC_PATH_PROG(DOCBOOKPS, docbook2ps) -AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) -AC_PATH_PROG(DOCBOOKHTML, docbook2html) -AC_PATH_PROG(DOCBOOKTXT, docbook2txt) - -AC_MSG_CHECKING([Whether to build text documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x && - test x$BUILD_TXTDOC != xno; then - BUILDTXTDOC=yes -fi -AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) -AC_MSG_RESULT([$BUILDTXTDOC]) - -AC_MSG_CHECKING([Whether to build PDF documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x && - test x$BUILD_PDFDOC != xno; then - BUILDPDFDOC=yes -fi -AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) -AC_MSG_RESULT([$BUILDPDFDOC]) - -AC_MSG_CHECKING([Whether to build PostScript documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x && - test x$BUILD_PSDOC != xno; then - BUILDPSDOC=yes -fi -AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) -AC_MSG_RESULT([$BUILDPSDOC]) - -AC_MSG_CHECKING([Whether to build HTML documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x && - test x$BUILD_HTMLDOC != xno; then - BUILDHTMLDOC=yes -fi -AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) -AC_MSG_RESULT([$BUILDHTMLDOC]) - -MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" -MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" -MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" -MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" - -AC_SUBST(MAKE_TEXT) -AC_SUBST(MAKE_PS) -AC_SUBST(MAKE_PDF) -AC_SUBST(MAKE_HTML) -]) # XORG_CHECK_DOCBOOK - -# XORG_CHECK_MALLOC_ZERO -# ---------------------- -# Minimum version: 1.0.0 -# -# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if -# malloc(0) returns NULL. Packages should add one of these cflags to -# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. -AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ -AC_ARG_ENABLE(malloc0returnsnull, - AC_HELP_STRING([--enable-malloc0returnsnull], - [malloc(0) returns NULL (default: auto)]), - [MALLOC_ZERO_RETURNS_NULL=$enableval], - [MALLOC_ZERO_RETURNS_NULL=auto]) - -AC_MSG_CHECKING([whether malloc(0) returns NULL]) -if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then - AC_RUN_IFELSE([ -char *malloc(); -char *realloc(); -char *calloc(); -main() { - char *m0, *r0, *c0, *p; - m0 = malloc(0); - p = malloc(10); - r0 = realloc(p,0); - c0 = calloc(0); - exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); -}], - [MALLOC_ZERO_RETURNS_NULL=yes], - [MALLOC_ZERO_RETURNS_NULL=no]) -fi -AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) - -if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then - MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" - XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS - XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" -else - MALLOC_ZERO_CFLAGS="" - XMALLOC_ZERO_CFLAGS="" - XTMALLOC_ZERO_CFLAGS="" -fi - -AC_SUBST([MALLOC_ZERO_CFLAGS]) -AC_SUBST([XMALLOC_ZERO_CFLAGS]) -AC_SUBST([XTMALLOC_ZERO_CFLAGS]) -]) # XORG_CHECK_MALLOC_ZERO - -# XORG_WITH_LINT() -# ---------------- -# Minimum version: 1.1.0 -# -# Sets up flags for source checkers such as lint and sparse if --with-lint -# is specified. (Use --with-lint=sparse for sparse.) -# Sets $LINT to name of source checker passed with --with-lint (default: lint) -# Sets $LINT_FLAGS to flags to pass to source checker -# Sets LINT automake conditional if enabled (default: disabled) -# -AC_DEFUN([XORG_WITH_LINT],[ - -# Allow checking code with lint, sparse, etc. -AC_ARG_WITH(lint, [AC_HELP_STRING([--with-lint], - [Use a lint-style source code checker (default: disabled)])], - [use_lint=$withval], [use_lint=no]) -if test "x$use_lint" = "xyes" ; then - LINT="lint" -else - LINT="$use_lint" -fi -if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then - case $LINT in - lint|*/lint) - case $host_os in - solaris*) - LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" - ;; - esac - ;; - esac -fi - -AC_SUBST(LINT) -AC_SUBST(LINT_FLAGS) -AM_CONDITIONAL(LINT, [test x$LINT != xno]) - -]) # XORG_WITH_LINT - -# XORG_LINT_LIBRARY(LIBNAME) -# -------------------------- -# Minimum version: 1.1.0 -# -# Sets up flags for building lint libraries for checking programs that call -# functions in the library. -# Disabled by default, enable with --enable-lint-library -# Sets: -# @LINTLIB@ - name of lint library file to make -# MAKE_LINT_LIB - automake conditional -# - -AC_DEFUN([XORG_LINT_LIBRARY],[ -AC_REQUIRE([XORG_WITH_LINT]) -# Build lint "library" for more indepth checks of programs calling this library -AC_ARG_ENABLE(lint-library, [AC_HELP_STRING([--enable-lint-library], - [Create lint library (default: disabled)])], - [make_lint_lib=$enableval], [make_lint_lib=no]) -if test "x$make_lint_lib" != "xno" ; then - if test "x$LINT" = "xno" ; then - AC_MSG_ERROR([Cannot make lint library without --with-lint]) - fi - if test "x$make_lint_lib" = "xyes" ; then - LINTLIB=llib-l$1.ln - else - LINTLIB=$make_lint_lib - fi -fi -AC_SUBST(LINTLIB) -AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) - -]) # XORG_LINT_LIBRARY - -# XORG_CWARNFLAGS -# --------------- -# Minimum version: 1.2.0 -# -# Defines CWARNFLAGS to enable C compiler warnings. -# -AC_DEFUN([XORG_CWARNFLAGS], [ -AC_REQUIRE([AC_PROG_CC]) -if test "x$GCC" = xyes ; then - CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ --Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ --Wbad-function-cast" - case `$CC -dumpversion` in - 3.4.* | 4.*) - CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement" - ;; - esac -else - AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) - if test "x$SUNCC" = "xyes"; then - CWARNFLAGS="-v" - fi -fi -AC_SUBST(CWARNFLAGS) -]) # XORG_CWARNFLAGS -dnl Copyright 2005 Red Hat, Inc -dnl -dnl Permission to use, copy, modify, distribute, and sell this software and its -dnl documentation for any purpose is hereby granted without fee, provided that -dnl the above copyright notice appear in all copies and that both that -dnl copyright notice and this permission notice appear in supporting -dnl documentation. -dnl -dnl The above copyright notice and this permission notice shall be included -dnl in all copies or substantial portions of the Software. -dnl -dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR -dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -dnl OTHER DEALINGS IN THE SOFTWARE. -dnl -dnl Except as contained in this notice, the name of the copyright holders shall -dnl not be used in advertising or otherwise to promote the sale, use or -dnl other dealings in this Software without prior written authorization -dnl from the copyright holders. -dnl - -# XORG_RELEASE_VERSION -# -------------------- -# Adds --with/without-release-string and changes the PACKAGE and -# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If -# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also -# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. - -AC_DEFUN([XORG_RELEASE_VERSION],[ - AC_ARG_WITH(release-version, - AC_HELP_STRING([--with-release-version=STRING], - [Use release version string in package name]), - [RELEASE_VERSION="$withval"], - [RELEASE_VERSION=""]) - if test "x$RELEASE_VERSION" != "x"; then - PACKAGE="$PACKAGE-$RELEASE_VERSION" - PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" - AC_MSG_NOTICE([Building with package name set to $PACKAGE]) - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], - [`echo $PACKAGE_VERSION | cut -d . -f 1`], - [Major version of this package]) - PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` - if test "x$PVM" = "x"; then - PVM="0" - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], - [$PVM], - [Minor version of this package]) - PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` - if test "x$PVP" = "x"; then - PVP="0" - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], - [$PVP], - [Patch version of this package]) -]) - -# XORG_CHANGELOG() -# ---------------- -# Minimum version: 1.2.0 -# -# Defines the variable CHANGELOG_CMD as the command to generate -# ChangeLog from git. -# -# Arrange that distcleancheck ignores ChangeLog left over by distclean. -# -AC_DEFUN([XORG_CHANGELOG], [ -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ -mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" -AC_SUBST([CHANGELOG_CMD]) -AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print']) -]) # XORG_CHANGELOG - -dnl $XdotOrg: lib/xtrans/xtrans.m4,v 1.6 2005/07/26 18:59:11 alanc Exp $ -dnl -dnl Copyright 2005 Sun Microsystems, Inc. All rights reserved. -dnl -dnl Permission to use, copy, modify, distribute, and sell this software and its -dnl documentation for any purpose is hereby granted without fee, provided that -dnl the above copyright notice appear in all copies and that both that -dnl copyright notice and this permission notice appear in supporting -dnl documentation. -dnl -dnl The above copyright notice and this permission notice shall be included -dnl in all copies or substantial portions of the Software. -dnl -dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR -dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -dnl OTHER DEALINGS IN THE SOFTWARE. -dnl -dnl Except as contained in this notice, the name of the copyright holders shall -dnl not be used in advertising or otherwise to promote the sale, use or -dnl other dealings in this Software without prior written authorization -dnl from the copyright holders. -dnl - -# XTRANS_TCP_FLAGS() -# ------------------ -# Find needed libraries for TCP sockets, and check for IPv6 support -AC_DEFUN([XTRANS_TCP_FLAGS],[ - # SVR4 hides these in libraries other than libc - AC_SEARCH_LIBS(socket, [socket]) - AC_SEARCH_LIBS(gethostbyname, [nsl]) - - # Needs to come after above checks for libsocket & libnsl for SVR4 systems - AC_ARG_ENABLE(ipv6, - AC_HELP_STRING([--enable-IPv6],[Enable IPv6 support]), - [IPV6CONN=$enableval], - [AC_CHECK_FUNC(getaddrinfo,[IPV6CONN=yes],[IPV6CONN=no])]) - AC_MSG_CHECKING([if IPv6 support should be built]) - if test "$IPV6CONN" = "yes"; then - AC_DEFINE(IPv6,1,[Support IPv6 for TCP connections]) - fi - AC_MSG_RESULT($IPV6CONN) - - # 4.3BSD-Reno added a new member to struct sockaddr_in - AC_CHECK_MEMBER([struct sockaddr_in.sin_len], - AC_DEFINE([BSD44SOCKETS],1, - [Define to 1 if `struct sockaddr_in' has a `sin_len' member]), [], [ -#include <sys/types.h> -#include <sys/socket.h> -#include <netinet/in.h> - ]) - - # POSIX.1g changed the type of pointer passed to getsockname/getpeername/etc. - AC_CHECK_TYPES([socklen_t], [], [], [ -AC_INCLUDES_DEFAULT -#include <sys/socket.h>]) - -]) # XTRANS_TCP_FLAGS - -# XTRANS_CONNECTION_FLAGS() -# ------------------------- -# Standard checks for which Xtrans transports to use by the Xorg packages -# that use Xtrans functions -AC_DEFUN([XTRANS_CONNECTION_FLAGS],[ - AC_REQUIRE([AC_CANONICAL_HOST]) - AC_REQUIRE([AC_TYPE_SIGNAL]) - [case $host_os in - mingw*) unixdef="no" ;; - *) unixdef="yes" ;; - esac] - AC_ARG_ENABLE(unix-transport, - AC_HELP_STRING([--enable-unix-transport],[Enable UNIX domain socket transport]), - [UNIXCONN=$enableval], [UNIXCONN=$unixdef]) - AC_MSG_CHECKING([if Xtrans should support UNIX socket connections]) - if test "$UNIXCONN" = "yes"; then - AC_DEFINE(UNIXCONN,1,[Support UNIX socket connections]) - fi - AC_MSG_RESULT($UNIXCONN) - AC_ARG_ENABLE(tcp-transport, - AC_HELP_STRING([--enable-tcp-transport],[Enable TCP socket transport]), - [TCPCONN=$enableval], [TCPCONN=yes]) - AC_MSG_CHECKING([if Xtrans should support TCP socket connections]) - AC_MSG_RESULT($TCPCONN) - if test "$TCPCONN" = "yes"; then - AC_DEFINE(TCPCONN,1,[Support TCP socket connections]) - XTRANS_TCP_FLAGS - fi - [case $host_os in - solaris*|sco*|sysv4*) localdef="yes" ;; - *) localdef="no" ;; - esac] - AC_ARG_ENABLE(local-transport, - AC_HELP_STRING([--enable-local-transport],[Enable os-specific local transport]), - [LOCALCONN=$enableval], [LOCALCONN=$localdef]) - AC_MSG_CHECKING([if Xtrans should support os-specific local connections]) - AC_MSG_RESULT($LOCALCONN) - if test "$LOCALCONN" = "yes"; then - AC_DEFINE(LOCALCONN,1,[Support os-specific local connections]) - fi - -]) # XTRANS_CONNECTION_FLAGS - - -# XTRANS_SECURE_RPC_FLAGS() -# ------------------------- -# Check for Secure RPC functions - must come after XTRANS_TCP_FLAGS -# so that any necessary networking libraries are already found -AC_DEFUN([XTRANS_SECURE_RPC_FLAGS], -[AC_REQUIRE([XTRANS_TCP_FLAGS]) - AC_ARG_ENABLE(secure-rpc, - AC_HELP_STRING([--enable-secure-rpc],[Enable Secure RPC]), - [SECURE_RPC=$enableval], [SECURE_RPC="try"]) - - if test "x$SECURE_RPC" = "xyes" -o "x$SECURE_RPC" = "xtry" ; then - FOUND_SECURE_RPC="no" - AC_CHECK_FUNCS([authdes_seccreate authdes_create], - [FOUND_SECURE_RPC="yes"]) - if test "x$FOUND_SECURE_RPC" = "xno" ; then - if test "x$SECURE_RPC" = "xyes" ; then - AC_MSG_ERROR([Secure RPC requested, but required functions not found]) - fi - SECURE_RPC="no" - else - dnl FreeBSD keeps getsecretkey in librpcsvc - AC_SEARCH_LIBS(getsecretkey, [rpcsvc]) - SECURE_RPC="yes" - fi - fi - AC_MSG_CHECKING([if Secure RPC authentication ("SUN-DES-1") should be supported]) - if test "x$SECURE_RPC" = "xyes" ; then - AC_DEFINE(SECURE_RPC, 1, [Support Secure RPC ("SUN-DES-1") authentication for X11 clients]) - fi - AC_MSG_RESULT($SECURE_RPC) -]) # XTRANS_SECURE_RPC_FLAGS - - # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation @@ -9638,6 +8963,33 @@ Check your system clock]) fi AC_MSG_RESULT(yes)]) +# Copyright (C) 2009 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 1 + +# AM_SILENT_RULES([DEFAULT]) +# -------------------------- +# Enable less verbose build rules; with the default set to DEFAULT +# (`yes' being less verbose, `no' or empty being verbose). +AC_DEFUN([AM_SILENT_RULES], +[AC_ARG_ENABLE([silent-rules], +[ --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0')]) +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; +esac +AC_SUBST([AM_DEFAULT_VERBOSITY])dnl +AM_BACKSLASH='\' +AC_SUBST([AM_BACKSLASH])dnl +_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl +]) + # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation @@ -9781,4 +9133,724 @@ AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR +dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. +dnl +dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved. +dnl +dnl Permission is hereby granted, free of charge, to any person obtaining a +dnl copy of this software and associated documentation files (the +dnl "Software"), to deal in the Software without restriction, including +dnl without limitation the rights to use, copy, modify, merge, publish, +dnl distribute, and/or sell copies of the Software, and to permit persons +dnl to whom the Software is furnished to do so, provided that the above +dnl copyright notice(s) and this permission notice appear in all copies of +dnl the Software and that both the above copyright notice(s) and this +dnl permission notice appear in supporting documentation. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL +dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING +dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION +dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +dnl +dnl Except as contained in this notice, the name of a copyright holder +dnl shall not be used in advertising or otherwise to promote the sale, use +dnl or other dealings in this Software without prior written authorization +dnl of the copyright holder. + +# XORG_MACROS_VERSION(required-version) +# ------------------------------------- +# Minimum version: 1.1.0 +# +# If you're using a macro added in Version 1.1 or newer, include this in +# your configure.ac with the minimum required version, such as: +# XORG_MACROS_VERSION(1.1) +# +# To ensure that this macro is defined, also add: +# m4_ifndef([XORG_MACROS_VERSION], +# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])]) +# +# +# See the "minimum version" comment for each macro you use to see what +# version you require. +m4_defun([XORG_MACROS_VERSION],[ +m4_define([vers_have], [1.3.0]) +m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) +m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) +m4_if(m4_cmp(maj_have, maj_needed), 0,, + [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])]) +m4_if(m4_version_compare(vers_have, [$1]), -1, + [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])]) +m4_undefine([vers_have]) +m4_undefine([maj_have]) +m4_undefine([maj_needed]) +]) # XORG_MACROS_VERSION + +# XORG_PROG_RAWCPP() +# ------------------ +# Minimum version: 1.0.0 +# +# Find cpp program and necessary flags for use in pre-processing text files +# such as man pages and config files +AC_DEFUN([XORG_PROG_RAWCPP],[ +AC_REQUIRE([AC_PROG_CPP]) +AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], + [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) + +# Check for flag to avoid builtin definitions - assumes unix is predefined, +# which is not the best choice for supporting other OS'es, but covers most +# of the ones we need for now. +AC_MSG_CHECKING([if $RAWCPP requires -undef]) +AC_LANG_CONFTEST([Does cpp redefine unix ?]) +if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + AC_MSG_RESULT([no]) +else + if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + RAWCPPFLAGS=-undef + AC_MSG_RESULT([yes]) + # under Cygwin unix is still defined even with -undef + elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + RAWCPPFLAGS="-undef -ansi" + AC_MSG_RESULT([yes, with -ansi]) + else + AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) + fi +fi +rm -f conftest.$ac_ext + +AC_MSG_CHECKING([if $RAWCPP requires -traditional]) +AC_LANG_CONFTEST([Does cpp preserve "whitespace"?]) +if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then + AC_MSG_RESULT([no]) +else + if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then + RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" + AC_MSG_RESULT([yes]) + else + AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) + fi +fi +rm -f conftest.$ac_ext +AC_SUBST(RAWCPPFLAGS) +]) # XORG_PROG_RAWCPP + +# XORG_MANPAGE_SECTIONS() +# ----------------------- +# Minimum version: 1.0.0 +# +# Determine which sections man pages go in for the different man page types +# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. +# Not sure if there's any better way than just hardcoding by OS name. +# Override default settings by setting environment variables + +AC_DEFUN([XORG_MANPAGE_SECTIONS],[ +AC_REQUIRE([AC_CANONICAL_HOST]) + +if test x$APP_MAN_SUFFIX = x ; then + APP_MAN_SUFFIX=1 +fi +if test x$APP_MAN_DIR = x ; then + APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' +fi + +if test x$LIB_MAN_SUFFIX = x ; then + LIB_MAN_SUFFIX=3 +fi +if test x$LIB_MAN_DIR = x ; then + LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' +fi + +if test x$FILE_MAN_SUFFIX = x ; then + case $host_os in + solaris*) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; + esac +fi +if test x$FILE_MAN_DIR = x ; then + FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' +fi + +if test x$MISC_MAN_SUFFIX = x ; then + case $host_os in + solaris*) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; + esac +fi +if test x$MISC_MAN_DIR = x ; then + MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' +fi + +if test x$DRIVER_MAN_SUFFIX = x ; then + case $host_os in + solaris*) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; + esac +fi +if test x$DRIVER_MAN_DIR = x ; then + DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' +fi + +if test x$ADMIN_MAN_SUFFIX = x ; then + case $host_os in + solaris*) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; + esac +fi +if test x$ADMIN_MAN_DIR = x ; then + ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' +fi + + +AC_SUBST([APP_MAN_SUFFIX]) +AC_SUBST([LIB_MAN_SUFFIX]) +AC_SUBST([FILE_MAN_SUFFIX]) +AC_SUBST([MISC_MAN_SUFFIX]) +AC_SUBST([DRIVER_MAN_SUFFIX]) +AC_SUBST([ADMIN_MAN_SUFFIX]) +AC_SUBST([APP_MAN_DIR]) +AC_SUBST([LIB_MAN_DIR]) +AC_SUBST([FILE_MAN_DIR]) +AC_SUBST([MISC_MAN_DIR]) +AC_SUBST([DRIVER_MAN_DIR]) +AC_SUBST([ADMIN_MAN_DIR]) +]) # XORG_MANPAGE_SECTIONS + +# XORG_CHECK_LINUXDOC +# ------------------- +# Minimum version: 1.0.0 +# +# Defines the variable MAKE_TEXT if the necessary tools and +# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. +# Whether or not the necessary tools and files are found can be checked +# with the AM_CONDITIONAL "BUILD_LINUXDOC" +AC_DEFUN([XORG_CHECK_LINUXDOC],[ +if test x$XORG_SGML_PATH = x ; then + XORG_SGML_PATH=$prefix/share/sgml +fi +HAVE_DEFS_ENT= + +if test x"$cross_compiling" = x"yes" ; then + HAVE_DEFS_ENT=no +else + AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) +fi + +AC_PATH_PROG(LINUXDOC, linuxdoc) +AC_PATH_PROG(PS2PDF, ps2pdf) + +AC_MSG_CHECKING([Whether to build documentation]) + +if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then + BUILDDOC=yes +else + BUILDDOC=no +fi + +AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) + +AC_MSG_RESULT([$BUILDDOC]) + +AC_MSG_CHECKING([Whether to build pdf documentation]) + +if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then + BUILDPDFDOC=yes +else + BUILDPDFDOC=no +fi + +AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) + +AC_MSG_RESULT([$BUILDPDFDOC]) + +MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt" +MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" +MAKE_PDF="$PS2PDF" +MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" + +AC_SUBST(MAKE_TEXT) +AC_SUBST(MAKE_PS) +AC_SUBST(MAKE_PDF) +AC_SUBST(MAKE_HTML) +]) # XORG_CHECK_LINUXDOC + +# XORG_CHECK_DOCBOOK +# ------------------- +# Minimum version: 1.0.0 +# +# Checks for the ability to build output formats from SGML DocBook source. +# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" +# indicates whether the necessary tools and files are found and, if set, +# $(MAKE_XXX) blah.sgml will produce blah.xxx. +AC_DEFUN([XORG_CHECK_DOCBOOK],[ +if test x$XORG_SGML_PATH = x ; then + XORG_SGML_PATH=$prefix/share/sgml +fi +HAVE_DEFS_ENT= +BUILDTXTDOC=no +BUILDPDFDOC=no +BUILDPSDOC=no +BUILDHTMLDOC=no + +AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) + +AC_PATH_PROG(DOCBOOKPS, docbook2ps) +AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) +AC_PATH_PROG(DOCBOOKHTML, docbook2html) +AC_PATH_PROG(DOCBOOKTXT, docbook2txt) + +AC_MSG_CHECKING([Whether to build text documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x && + test x$BUILD_TXTDOC != xno; then + BUILDTXTDOC=yes +fi +AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) +AC_MSG_RESULT([$BUILDTXTDOC]) + +AC_MSG_CHECKING([Whether to build PDF documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x && + test x$BUILD_PDFDOC != xno; then + BUILDPDFDOC=yes +fi +AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) +AC_MSG_RESULT([$BUILDPDFDOC]) + +AC_MSG_CHECKING([Whether to build PostScript documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x && + test x$BUILD_PSDOC != xno; then + BUILDPSDOC=yes +fi +AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) +AC_MSG_RESULT([$BUILDPSDOC]) + +AC_MSG_CHECKING([Whether to build HTML documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x && + test x$BUILD_HTMLDOC != xno; then + BUILDHTMLDOC=yes +fi +AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) +AC_MSG_RESULT([$BUILDHTMLDOC]) + +MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" +MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" +MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" +MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" + +AC_SUBST(MAKE_TEXT) +AC_SUBST(MAKE_PS) +AC_SUBST(MAKE_PDF) +AC_SUBST(MAKE_HTML) +]) # XORG_CHECK_DOCBOOK + +# XORG_CHECK_MALLOC_ZERO +# ---------------------- +# Minimum version: 1.0.0 +# +# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if +# malloc(0) returns NULL. Packages should add one of these cflags to +# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. +AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ +AC_ARG_ENABLE(malloc0returnsnull, + AS_HELP_STRING([--enable-malloc0returnsnull], + [malloc(0) returns NULL (default: auto)]), + [MALLOC_ZERO_RETURNS_NULL=$enableval], + [MALLOC_ZERO_RETURNS_NULL=auto]) + +AC_MSG_CHECKING([whether malloc(0) returns NULL]) +if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then + AC_RUN_IFELSE([ +char *malloc(); +char *realloc(); +char *calloc(); +main() { + char *m0, *r0, *c0, *p; + m0 = malloc(0); + p = malloc(10); + r0 = realloc(p,0); + c0 = calloc(0); + exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); +}], + [MALLOC_ZERO_RETURNS_NULL=yes], + [MALLOC_ZERO_RETURNS_NULL=no]) +fi +AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) + +if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then + MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" + XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS + XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" +else + MALLOC_ZERO_CFLAGS="" + XMALLOC_ZERO_CFLAGS="" + XTMALLOC_ZERO_CFLAGS="" +fi + +AC_SUBST([MALLOC_ZERO_CFLAGS]) +AC_SUBST([XMALLOC_ZERO_CFLAGS]) +AC_SUBST([XTMALLOC_ZERO_CFLAGS]) +]) # XORG_CHECK_MALLOC_ZERO + +# XORG_WITH_LINT() +# ---------------- +# Minimum version: 1.1.0 +# +# Sets up flags for source checkers such as lint and sparse if --with-lint +# is specified. (Use --with-lint=sparse for sparse.) +# Sets $LINT to name of source checker passed with --with-lint (default: lint) +# Sets $LINT_FLAGS to flags to pass to source checker +# Sets LINT automake conditional if enabled (default: disabled) +# +AC_DEFUN([XORG_WITH_LINT],[ + +# Allow checking code with lint, sparse, etc. +AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint], + [Use a lint-style source code checker (default: disabled)])], + [use_lint=$withval], [use_lint=no]) +if test "x$use_lint" = "xyes" ; then + LINT="lint" +else + LINT="$use_lint" +fi +if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then + case $LINT in + lint|*/lint) + case $host_os in + solaris*) + LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" + ;; + esac + ;; + esac +fi + +AC_SUBST(LINT) +AC_SUBST(LINT_FLAGS) +AM_CONDITIONAL(LINT, [test x$LINT != xno]) + +]) # XORG_WITH_LINT + +# XORG_LINT_LIBRARY(LIBNAME) +# -------------------------- +# Minimum version: 1.1.0 +# +# Sets up flags for building lint libraries for checking programs that call +# functions in the library. +# Disabled by default, enable with --enable-lint-library +# Sets: +# @LINTLIB@ - name of lint library file to make +# MAKE_LINT_LIB - automake conditional +# + +AC_DEFUN([XORG_LINT_LIBRARY],[ +AC_REQUIRE([XORG_WITH_LINT]) +# Build lint "library" for more indepth checks of programs calling this library +AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library], + [Create lint library (default: disabled)])], + [make_lint_lib=$enableval], [make_lint_lib=no]) +if test "x$make_lint_lib" != "xno" ; then + if test "x$LINT" = "xno" ; then + AC_MSG_ERROR([Cannot make lint library without --with-lint]) + fi + if test "x$make_lint_lib" = "xyes" ; then + LINTLIB=llib-l$1.ln + else + LINTLIB=$make_lint_lib + fi +fi +AC_SUBST(LINTLIB) +AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) + +]) # XORG_LINT_LIBRARY + +# XORG_CWARNFLAGS +# --------------- +# Minimum version: 1.2.0 +# +# Defines CWARNFLAGS to enable C compiler warnings. +# +AC_DEFUN([XORG_CWARNFLAGS], [ +AC_REQUIRE([AC_PROG_CC]) +if test "x$GCC" = xyes ; then + CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ +-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ +-Wbad-function-cast" + case `$CC -dumpversion` in + 3.4.* | 4.*) + CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement" + ;; + esac +else + AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + if test "x$SUNCC" = "xyes"; then + CWARNFLAGS="-v" + fi +fi +AC_SUBST(CWARNFLAGS) +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +]) # XORG_CWARNFLAGS + +# XORG_STRICT_OPTION +# ----------------------- +# Minimum version: 1.3.0 +# +# Add configure option to enable strict compilation +AC_DEFUN([XORG_STRICT_OPTION], [ +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_CC_C99]) +AC_REQUIRE([XORG_CWARNFLAGS]) + +AC_ARG_ENABLE(strict-compilation, + AS_HELP_STRING([--enable-strict-compilation], + [Enable all warnings from compiler and make them errors (default: disabled)]), + [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) +if test "x$STRICT_COMPILE" = "xyes"; then + AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) + if test "x$GCC" = xyes ; then + STRICT_CFLAGS="-pedantic -Werror" + elif test "x$SUNCC" = "xyes"; then + STRICT_CFLAGS="-errwarn" + elif test "x$INTELCC" = "xyes"; then + STRICT_CFLAGS="-Werror" + fi +fi +CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" +AC_SUBST([CWARNFLAGS]) +]) # XORG_STRICT_OPTION + +# XORG_DEFAULT_OPTIONS +# -------------------- +# Minimum version: 1.3.0 +# +# Defines default options for X.Org modules. +# +AC_DEFUN([XORG_DEFAULT_OPTIONS], [ +XORG_CWARNFLAGS +XORG_STRICT_OPTION +XORG_RELEASE_VERSION +XORG_CHANGELOG +XORG_MANPAGE_SECTIONS +]) # XORG_DEFAULT_OPTIONS +dnl Copyright 2005 Red Hat, Inc +dnl +dnl Permission to use, copy, modify, distribute, and sell this software and its +dnl documentation for any purpose is hereby granted without fee, provided that +dnl the above copyright notice appear in all copies and that both that +dnl copyright notice and this permission notice appear in supporting +dnl documentation. +dnl +dnl The above copyright notice and this permission notice shall be included +dnl in all copies or substantial portions of the Software. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR +dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +dnl OTHER DEALINGS IN THE SOFTWARE. +dnl +dnl Except as contained in this notice, the name of the copyright holders shall +dnl not be used in advertising or otherwise to promote the sale, use or +dnl other dealings in this Software without prior written authorization +dnl from the copyright holders. +dnl + +# XORG_RELEASE_VERSION +# -------------------- +# Adds --with/without-release-string and changes the PACKAGE and +# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If +# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also +# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. + +AC_DEFUN([XORG_RELEASE_VERSION],[ + AC_ARG_WITH(release-version, + AS_HELP_STRING([--with-release-version=STRING], + [Use release version string in package name]), + [RELEASE_VERSION="$withval"], + [RELEASE_VERSION=""]) + if test "x$RELEASE_VERSION" != "x"; then + PACKAGE="$PACKAGE-$RELEASE_VERSION" + PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" + AC_MSG_NOTICE([Building with package name set to $PACKAGE]) + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], + [`echo $PACKAGE_VERSION | cut -d . -f 1`], + [Major version of this package]) + PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` + if test "x$PVM" = "x"; then + PVM="0" + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], + [$PVM], + [Minor version of this package]) + PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` + if test "x$PVP" = "x"; then + PVP="0" + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], + [$PVP], + [Patch version of this package]) +]) + +# XORG_CHANGELOG() +# ---------------- +# Minimum version: 1.2.0 +# +# Defines the variable CHANGELOG_CMD as the command to generate +# ChangeLog from git. +# +# Arrange that distcleancheck ignores ChangeLog left over by distclean. +# +AC_DEFUN([XORG_CHANGELOG], [ +CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ +mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ +echo 'git directory not found: installing possibly empty changelog.' >&2)" +AC_SUBST([CHANGELOG_CMD]) +AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print']) +]) # XORG_CHANGELOG + +dnl $XdotOrg: lib/xtrans/xtrans.m4,v 1.6 2005/07/26 18:59:11 alanc Exp $ +dnl +dnl Copyright 2005 Sun Microsystems, Inc. All rights reserved. +dnl +dnl Permission to use, copy, modify, distribute, and sell this software and its +dnl documentation for any purpose is hereby granted without fee, provided that +dnl the above copyright notice appear in all copies and that both that +dnl copyright notice and this permission notice appear in supporting +dnl documentation. +dnl +dnl The above copyright notice and this permission notice shall be included +dnl in all copies or substantial portions of the Software. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR +dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +dnl OTHER DEALINGS IN THE SOFTWARE. +dnl +dnl Except as contained in this notice, the name of the copyright holders shall +dnl not be used in advertising or otherwise to promote the sale, use or +dnl other dealings in this Software without prior written authorization +dnl from the copyright holders. +dnl + +# XTRANS_TCP_FLAGS() +# ------------------ +# Find needed libraries for TCP sockets, and check for IPv6 support +AC_DEFUN([XTRANS_TCP_FLAGS],[ + # SVR4 hides these in libraries other than libc + AC_SEARCH_LIBS(socket, [socket]) + AC_SEARCH_LIBS(gethostbyname, [nsl]) + AC_HAVE_LIBRARY([ws2_32]) + + # Needs to come after above checks for libsocket & libnsl for SVR4 systems + AC_ARG_ENABLE(ipv6, + AC_HELP_STRING([--enable-ipv6],[Enable IPv6 support]), + [IPV6CONN=$enableval], + [AC_CHECK_FUNC(getaddrinfo,[IPV6CONN=yes],[IPV6CONN=no])]) + AC_MSG_CHECKING([if IPv6 support should be built]) + if test "$IPV6CONN" = "yes"; then + AC_DEFINE(IPv6,1,[Support IPv6 for TCP connections]) + fi + AC_MSG_RESULT($IPV6CONN) + + # 4.3BSD-Reno added a new member to struct sockaddr_in + AC_CHECK_MEMBER([struct sockaddr_in.sin_len], + AC_DEFINE([BSD44SOCKETS],1, + [Define to 1 if `struct sockaddr_in' has a `sin_len' member]), [], [ +#include <sys/types.h> +#include <sys/socket.h> +#include <netinet/in.h> + ]) + + # POSIX.1g changed the type of pointer passed to getsockname/getpeername/etc. + AC_CHECK_TYPES([socklen_t], [], [], [ +AC_INCLUDES_DEFAULT +#include <sys/socket.h>]) + +]) # XTRANS_TCP_FLAGS + +# XTRANS_CONNECTION_FLAGS() +# ------------------------- +# Standard checks for which Xtrans transports to use by the Xorg packages +# that use Xtrans functions +AC_DEFUN([XTRANS_CONNECTION_FLAGS],[ + AC_REQUIRE([AC_CANONICAL_HOST]) + AC_REQUIRE([AC_TYPE_SIGNAL]) + [case $host_os in + mingw*) unixdef="no" ;; + *) unixdef="yes" ;; + esac] + AC_ARG_ENABLE(unix-transport, + AC_HELP_STRING([--enable-unix-transport],[Enable UNIX domain socket transport]), + [UNIXCONN=$enableval], [UNIXCONN=$unixdef]) + AC_MSG_CHECKING([if Xtrans should support UNIX socket connections]) + if test "$UNIXCONN" = "yes"; then + AC_DEFINE(UNIXCONN,1,[Support UNIX socket connections]) + fi + AC_MSG_RESULT($UNIXCONN) + AC_ARG_ENABLE(tcp-transport, + AC_HELP_STRING([--enable-tcp-transport],[Enable TCP socket transport]), + [TCPCONN=$enableval], [TCPCONN=yes]) + AC_MSG_CHECKING([if Xtrans should support TCP socket connections]) + AC_MSG_RESULT($TCPCONN) + if test "$TCPCONN" = "yes"; then + AC_DEFINE(TCPCONN,1,[Support TCP socket connections]) + XTRANS_TCP_FLAGS + fi + [case $host_os in + solaris*|sco*|sysv4*) localdef="yes" ;; + *) localdef="no" ;; + esac] + AC_ARG_ENABLE(local-transport, + AC_HELP_STRING([--enable-local-transport],[Enable os-specific local transport]), + [LOCALCONN=$enableval], [LOCALCONN=$localdef]) + AC_MSG_CHECKING([if Xtrans should support os-specific local connections]) + AC_MSG_RESULT($LOCALCONN) + if test "$LOCALCONN" = "yes"; then + AC_DEFINE(LOCALCONN,1,[Support os-specific local connections]) + fi + +]) # XTRANS_CONNECTION_FLAGS + + +# XTRANS_SECURE_RPC_FLAGS() +# ------------------------- +# Check for Secure RPC functions - must come after XTRANS_TCP_FLAGS +# so that any necessary networking libraries are already found +AC_DEFUN([XTRANS_SECURE_RPC_FLAGS], +[AC_REQUIRE([XTRANS_TCP_FLAGS]) + AC_ARG_ENABLE(secure-rpc, + AC_HELP_STRING([--enable-secure-rpc],[Enable Secure RPC]), + [SECURE_RPC=$enableval], [SECURE_RPC="try"]) + + if test "x$SECURE_RPC" = "xyes" -o "x$SECURE_RPC" = "xtry" ; then + FOUND_SECURE_RPC="no" + AC_CHECK_FUNCS([authdes_seccreate authdes_create], + [FOUND_SECURE_RPC="yes"]) + if test "x$FOUND_SECURE_RPC" = "xno" ; then + if test "x$SECURE_RPC" = "xyes" ; then + AC_MSG_ERROR([Secure RPC requested, but required functions not found]) + fi + SECURE_RPC="no" + else + dnl FreeBSD keeps getsecretkey in librpcsvc + AC_SEARCH_LIBS(getsecretkey, [rpcsvc]) + SECURE_RPC="yes" + fi + fi + AC_MSG_CHECKING([if Secure RPC authentication ("SUN-DES-1") should be supported]) + if test "x$SECURE_RPC" = "xyes" ; then + AC_DEFINE(SECURE_RPC, 1, [Support Secure RPC ("SUN-DES-1") authentication for X11 clients]) + fi + AC_MSG_RESULT($SECURE_RPC) +]) # XTRANS_SECURE_RPC_FLAGS + + m4_include([acinclude.m4]) diff --git a/libX11/config.guess b/libX11/config.guess index f32079abd..da8331460 100644 --- a/libX11/config.guess +++ b/libX11/config.guess @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-01-23' +timestamp='2009-04-27' # This file is free software; you can redistribute it and/or modify it # under the terms of the GNU General Public License as published by @@ -324,6 +324,9 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in case `/usr/bin/uname -p` in sparc) echo sparc-icl-nx7; exit ;; esac ;; + s390x:SunOS:*:*) + echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + exit ;; sun4H:SunOS:5.*:*) echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; @@ -331,7 +334,20 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*) - echo i386-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` + eval $set_cc_for_build + SUN_ARCH="i386" + # If there is a compiler, see if it is configured for 64-bit objects. + # Note that the Sun cc does not turn __LP64__ into 1 like gcc does. + # This test works for both compilers. + if [ "$CC_FOR_BUILD" != 'no_compiler_found' ]; then + if (echo '#ifdef __amd64'; echo IS_64BIT_ARCH; echo '#endif') | \ + (CCOPTS= $CC_FOR_BUILD -E - 2>/dev/null) | \ + grep IS_64BIT_ARCH >/dev/null + then + SUN_ARCH="x86_64" + fi + fi + echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'` exit ;; sun4*:SunOS:6*:*) # According to config.sub, this is the proper way to canonicalize @@ -796,7 +812,7 @@ EOF x86) echo i586-pc-interix${UNAME_RELEASE} exit ;; - EM64T | authenticamd) + EM64T | authenticamd | genuineintel) echo x86_64-unknown-interix${UNAME_RELEASE} exit ;; IA64) @@ -935,6 +951,9 @@ EOF if test "$?" = 0 ; then LIBC="libc1" ; else LIBC="" ; fi echo ${UNAME_MACHINE}-unknown-linux-gnu${LIBC} exit ;; + padre:Linux:*:*) + echo sparc-unknown-linux-gnu + exit ;; parisc:Linux:*:* | hppa:Linux:*:*) # Look for CPU level case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in @@ -985,9 +1004,6 @@ EOF a.out-i386-linux) echo "${UNAME_MACHINE}-pc-linux-gnuaout" exit ;; - coff-i386) - echo "${UNAME_MACHINE}-pc-linux-gnucoff" - exit ;; "") # Either a pre-BFD a.out linker (linux-gnuoldld) or # one that does not give us useful --help. @@ -1102,8 +1118,11 @@ EOF pc:*:*:*) # Left here for compatibility: # uname -m prints for DJGPP always 'pc', but it prints nothing about - # the processor, so we play safe by assuming i386. - echo i386-pc-msdosdjgpp + # the processor, so we play safe by assuming i586. + # Note: whatever this is, it MUST be the same as what config.sub + # prints for the "djgpp" host, or else GDB configury will decide that + # this is a cross-build. + echo i586-pc-msdosdjgpp exit ;; Intel:Mach:3*:*) echo i386-pc-mach3 @@ -1141,6 +1160,16 @@ EOF 3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*) /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ && { echo i486-ncr-sysv4; exit; } ;; + NCR*:*:4.2:* | MPRAS*:*:4.2:*) + OS_REL='.3' + test -r /etc/.relid \ + && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid` + /bin/uname -p 2>/dev/null | grep 86 >/dev/null \ + && { echo i486-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } + /bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \ + && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;; m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*) echo m68k-unknown-lynxos${UNAME_RELEASE} exit ;; @@ -1216,6 +1245,9 @@ EOF BePC:BeOS:*:*) # BeOS running on Intel PC compatible. echo i586-pc-beos exit ;; + BePC:Haiku:*:*) # Haiku running on Intel PC compatible. + echo i586-pc-haiku + exit ;; SX-4:SUPER-UX:*:*) echo sx4-nec-superux${UNAME_RELEASE} exit ;; @@ -1324,6 +1356,9 @@ EOF i*86:rdos:*:*) echo ${UNAME_MACHINE}-pc-rdos exit ;; + i*86:AROS:*:*) + echo ${UNAME_MACHINE}-pc-aros + exit ;; esac #echo '(No uname command or uname output not recognized.)' 1>&2 diff --git a/libX11/config.sub b/libX11/config.sub index 6759825a5..a39437d01 100644 --- a/libX11/config.sub +++ b/libX11/config.sub @@ -4,7 +4,7 @@ # 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008 # Free Software Foundation, Inc. -timestamp='2008-01-16' +timestamp='2009-04-17' # This file is (in principle) common to ALL GNU software. # The presence of a machine in this file suggests that SOME GNU software @@ -122,6 +122,7 @@ maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'` case $maybe_os in nto-qnx* | linux-gnu* | linux-dietlibc | linux-newlib* | linux-uclibc* | \ uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | knetbsd*-gnu* | netbsd*-gnu* | \ + kopensolaris*-gnu* | \ storm-chaos* | os2-emx* | rtmk-nova*) os=-$maybe_os basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'` @@ -249,13 +250,16 @@ case $basic_machine in | h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \ | i370 | i860 | i960 | ia64 \ | ip2k | iq2000 \ + | lm32 \ | m32c | m32r | m32rle | m68000 | m68k | m88k \ - | maxq | mb | microblaze | mcore | mep \ + | maxq | mb | microblaze | mcore | mep | metag \ | mips | mipsbe | mipseb | mipsel | mipsle \ | mips16 \ | mips64 | mips64el \ - | mips64vr | mips64vrel \ + | mips64octeon | mips64octeonel \ | mips64orion | mips64orionel \ + | mips64r5900 | mips64r5900el \ + | mips64vr | mips64vrel \ | mips64vr4100 | mips64vr4100el \ | mips64vr4300 | mips64vr4300el \ | mips64vr5000 | mips64vr5000el \ @@ -268,6 +272,7 @@ case $basic_machine in | mipsisa64sr71k | mipsisa64sr71kel \ | mipstx39 | mipstx39el \ | mn10200 | mn10300 \ + | moxie \ | mt \ | msp430 \ | nios | nios2 \ @@ -277,7 +282,7 @@ case $basic_machine in | powerpc | powerpc64 | powerpc64le | powerpcle | ppcbe \ | pyramid \ | score \ - | sh | sh[1234] | sh[24]a | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ + | sh | sh[1234] | sh[24]a | sh[24]aeb | sh[23]e | sh[34]eb | sheb | shbe | shle | sh[1234]le | sh3ele \ | sh64 | sh64le \ | sparc | sparc64 | sparc64b | sparc64v | sparc86x | sparclet | sparclite \ | sparcv8 | sparcv9 | sparcv9b | sparcv9v \ @@ -286,7 +291,7 @@ case $basic_machine in | v850 | v850e \ | we32k \ | x86 | xc16x | xscale | xscalee[bl] | xstormy16 | xtensa \ - | z8k) + | z8k | z80) basic_machine=$basic_machine-unknown ;; m6811 | m68hc11 | m6812 | m68hc12) @@ -329,14 +334,17 @@ case $basic_machine in | hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \ | i*86-* | i860-* | i960-* | ia64-* \ | ip2k-* | iq2000-* \ + | lm32-* \ | m32c-* | m32r-* | m32rle-* \ | m68000-* | m680[012346]0-* | m68360-* | m683?2-* | m68k-* \ - | m88110-* | m88k-* | maxq-* | mcore-* \ + | m88110-* | m88k-* | maxq-* | mcore-* | metag-* \ | mips-* | mipsbe-* | mipseb-* | mipsel-* | mipsle-* \ | mips16-* \ | mips64-* | mips64el-* \ - | mips64vr-* | mips64vrel-* \ + | mips64octeon-* | mips64octeonel-* \ | mips64orion-* | mips64orionel-* \ + | mips64r5900-* | mips64r5900el-* \ + | mips64vr-* | mips64vrel-* \ | mips64vr4100-* | mips64vr4100el-* \ | mips64vr4300-* | mips64vr4300el-* \ | mips64vr5000-* | mips64vr5000el-* \ @@ -358,20 +366,20 @@ case $basic_machine in | powerpc-* | powerpc64-* | powerpc64le-* | powerpcle-* | ppcbe-* \ | pyramid-* \ | romp-* | rs6000-* \ - | sh-* | sh[1234]-* | sh[24]a-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ + | sh-* | sh[1234]-* | sh[24]a-* | sh[24]aeb-* | sh[23]e-* | sh[34]eb-* | sheb-* | shbe-* \ | shle-* | sh[1234]le-* | sh3ele-* | sh64-* | sh64le-* \ | sparc-* | sparc64-* | sparc64b-* | sparc64v-* | sparc86x-* | sparclet-* \ | sparclite-* \ | sparcv8-* | sparcv9-* | sparcv9b-* | sparcv9v-* | strongarm-* | sv1-* | sx?-* \ | tahoe-* | thumb-* \ - | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* \ + | tic30-* | tic4x-* | tic54x-* | tic55x-* | tic6x-* | tic80-* | tile-* \ | tron-* \ | v850-* | v850e-* | vax-* \ | we32k-* \ | x86-* | x86_64-* | xc16x-* | xps100-* | xscale-* | xscalee[bl]-* \ | xstormy16-* | xtensa*-* \ | ymp-* \ - | z8k-*) + | z8k-* | z80-*) ;; # Recognize the basic CPU types without company name, with glob match. xtensa*) @@ -439,6 +447,10 @@ case $basic_machine in basic_machine=m68k-apollo os=-bsd ;; + aros) + basic_machine=i386-pc + os=-aros + ;; aux) basic_machine=m68k-apple os=-aux @@ -459,6 +471,10 @@ case $basic_machine in basic_machine=c90-cray os=-unicos ;; + cegcc) + basic_machine=arm-unknown + os=-cegcc + ;; convex-c1) basic_machine=c1-convex os=-bsd @@ -526,6 +542,10 @@ case $basic_machine in basic_machine=m88k-motorola os=-sysv3 ;; + dicos) + basic_machine=i686-pc + os=-dicos + ;; djgpp) basic_machine=i586-pc os=-msdosdjgpp @@ -1128,6 +1148,10 @@ case $basic_machine in basic_machine=z8k-unknown os=-sim ;; + z80-*-coff) + basic_machine=z80-unknown + os=-sim + ;; none) basic_machine=none-none os=-none @@ -1166,7 +1190,7 @@ case $basic_machine in we32k) basic_machine=we32k-att ;; - sh[1234] | sh[24]a | sh[34]eb | sh[1234]le | sh[23]ele) + sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele) basic_machine=sh-unknown ;; sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v) @@ -1238,8 +1262,9 @@ case $os in -gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \ | -*vms* | -sco* | -esix* | -isc* | -aix* | -sunos | -sunos[34]*\ | -hpux* | -unos* | -osf* | -luna* | -dgux* | -solaris* | -sym* \ + | -kopensolaris* \ | -amigaos* | -amigados* | -msdos* | -newsos* | -unicos* | -aof* \ - | -aos* \ + | -aos* | -aros* \ | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \ | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \ | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \ @@ -1248,7 +1273,7 @@ case $os in | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \ | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \ | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \ - | -chorusos* | -chorusrdb* \ + | -chorusos* | -chorusrdb* | -cegcc* \ | -cygwin* | -pe* | -psos* | -moss* | -proelf* | -rtems* \ | -mingw32* | -linux-gnu* | -linux-newlib* | -linux-uclibc* \ | -uxpv* | -beos* | -mpeix* | -udk* \ @@ -1388,6 +1413,9 @@ case $os in -zvmoe) os=-zvmoe ;; + -dicos*) + os=-dicos + ;; -none) ;; *) diff --git a/libX11/configure b/libX11/configure index e991244da..307b8fdcc 100644 --- a/libX11/configure +++ b/libX11/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for libX11 1.2.99.901. +# Generated by GNU Autoconf 2.63 for libX11 1.3. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -745,8 +745,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='libX11' PACKAGE_TARNAME='libX11' -PACKAGE_VERSION='1.2.99.901' -PACKAGE_STRING='libX11 1.2.99.901' +PACKAGE_VERSION='1.3' +PACKAGE_STRING='libX11 1.3' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' ac_unique_file="Makefile.am" @@ -790,8 +790,8 @@ ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS -distcleancheck_listfiles -CHANGELOG_CMD +HAVE_AM_SILENT_RULES_FALSE +HAVE_AM_SILENT_RULES_TRUE XTMALLOC_ZERO_CFLAGS XMALLOC_ZERO_CFLAGS MALLOC_ZERO_CFLAGS @@ -819,18 +819,6 @@ XKB_FALSE XKB_TRUE MANPAGES_FALSE MANPAGES_TRUE -ADMIN_MAN_DIR -DRIVER_MAN_DIR -MISC_MAN_DIR -FILE_MAN_DIR -LIB_MAN_DIR -APP_MAN_DIR -ADMIN_MAN_SUFFIX -DRIVER_MAN_SUFFIX -MISC_MAN_SUFFIX -FILE_MAN_SUFFIX -LIB_MAN_SUFFIX -APP_MAN_SUFFIX BIGFONT_LIBS BIGFONT_CFLAGS XLOCALE_FALSE @@ -861,9 +849,28 @@ XPROTO_CFLAGS PKG_CONFIG XCB_FALSE XCB_TRUE +HAVE_PERL_FALSE +HAVE_PERL_TRUE +PERL RAWCPPFLAGS RAWCPP CC_FOR_BUILD +ADMIN_MAN_DIR +DRIVER_MAN_DIR +MISC_MAN_DIR +FILE_MAN_DIR +LIB_MAN_DIR +APP_MAN_DIR +ADMIN_MAN_SUFFIX +DRIVER_MAN_SUFFIX +MISC_MAN_SUFFIX +FILE_MAN_SUFFIX +LIB_MAN_SUFFIX +APP_MAN_SUFFIX +distcleancheck_listfiles +CHANGELOG_CMD +AM_BACKSLASH +AM_DEFAULT_VERBOSITY CWARNFLAGS LTCXXCOMPILE LTCOMPILE @@ -986,6 +993,10 @@ with_pic enable_fast_install with_gnu_ld enable_libtool_lock +enable_silent_rules +enable_strict_compilation +with_release_version +with_perl with_xcb enable_unix_transport enable_tcp_transport @@ -1008,7 +1019,6 @@ with_lint enable_lint_library with_locale_lib_dir enable_malloc0returnsnull -with_release_version ' ac_precious_vars='build_alias host_alias @@ -1582,7 +1592,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libX11 1.2.99.901 to adapt to many kinds of systems. +\`configure' configures libX11 1.3 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1652,7 +1662,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libX11 1.2.99.901:";; + short | recursive ) echo "Configuration of libX11 1.3:";; esac cat <<\_ACEOF @@ -1669,6 +1679,11 @@ Optional Features: --enable-fast-install[=PKGS] optimize for fast installation [default=yes] --disable-libtool-lock avoid locking (might break parallel builds) + --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0') + --enable-strict-compilation + Enable all warnings from compiler and make them + errors (default: disabled) --enable-secure-rpc Enable Secure RPC --enable-loadable-i18n Controls loadable i18n module support --disable-loadable-xcursor @@ -1692,6 +1707,9 @@ Optional Packages: --with-pic try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] + --with-release-version=STRING + Use release version string in package name + --with-perl=<path> path to perl interpreter for build-time tests --with-xcb use XCB for low-level protocol implementation --with-local-transport-order=LIST preference sorted list of transport types to try for @@ -1703,8 +1721,6 @@ Optional Packages: --with-locale-lib-dir=DIR Directory where locale libraries files are installed (default: $libdir/X11/locale) - --with-release-version=STRING - Use release version string in package name Some influential environment variables: CC C compiler command @@ -1799,7 +1815,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libX11 configure 1.2.99.901 +libX11 configure 1.3 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1813,7 +1829,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libX11 $as_me 1.2.99.901, which was +It was created by libX11 $as_me 1.3, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2663,7 +2679,7 @@ fi # Define the identity of the package. PACKAGE='libX11' - VERSION='1.2.99.901' + VERSION='1.3' cat >>confdefs.h <<_ACEOF @@ -2733,7 +2749,7 @@ ac_config_headers="$ac_config_headers src/config.h" ac_config_headers="$ac_config_headers include/X11/XlibConf.h" -# Require xorg-macros: XORG_CWARNFLAGS, XORG_CHANGELOG, XORG_WITH_LINT +# Require xorg-macros: XORG_DEFAULT_OPTIONS, XORG_CHANGELOG, XORG_WITH_LINT @@ -5298,13 +5314,13 @@ if test "${lt_cv_nm_interface+set}" = set; then else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:5301: $ac_compile\"" >&5) + (eval echo "\"\$as_me:5317: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:5304: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:5320: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:5307: output\"" >&5) + (eval echo "\"\$as_me:5323: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -6509,7 +6525,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 6512 "configure"' > conftest.$ac_ext + echo '#line 6528 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7874,11 +7890,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7877: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7893: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7881: \$? = $ac_status" >&5 + echo "$as_me:7897: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -8213,11 +8229,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8216: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8232: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:8220: \$? = $ac_status" >&5 + echo "$as_me:8236: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -8318,11 +8334,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8321: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8337: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8325: \$? = $ac_status" >&5 + echo "$as_me:8341: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -8373,11 +8389,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8376: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8392: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8380: \$? = $ac_status" >&5 + echo "$as_me:8396: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -11176,7 +11192,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11179 "configure" +#line 11195 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11272,7 +11288,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 11275 "configure" +#line 11291 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -12506,6 +12522,209 @@ else fi + { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5 +$as_echo_n "checking for $CC option to accept ISO C99... " >&6; } +if test "${ac_cv_prog_cc_c99+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c99=no +ac_save_CC=$CC +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdarg.h> +#include <stdbool.h> +#include <stdlib.h> +#include <wchar.h> +#include <stdio.h> + +// Check varargs macros. These examples are taken from C99 6.10.3.5. +#define debug(...) fprintf (stderr, __VA_ARGS__) +#define showlist(...) puts (#__VA_ARGS__) +#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) +static void +test_varargs_macros (void) +{ + int x = 1234; + int y = 5678; + debug ("Flag"); + debug ("X = %d\n", x); + showlist (The first, second, and third items.); + report (x>y, "x is %d but y is %d", x, y); +} + +// Check long long types. +#define BIG64 18446744073709551615ull +#define BIG32 4294967295ul +#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) +#if !BIG_OK + your preprocessor is broken; +#endif +#if BIG_OK +#else + your preprocessor is broken; +#endif +static long long int bignum = -9223372036854775807LL; +static unsigned long long int ubignum = BIG64; + +struct incomplete_array +{ + int datasize; + double data[]; +}; + +struct named_init { + int number; + const wchar_t *name; + double average; +}; + +typedef const char *ccp; + +static inline int +test_restrict (ccp restrict text) +{ + // See if C++-style comments work. + // Iterate through items via the restricted pointer. + // Also check for declarations in for loops. + for (unsigned int i = 0; *(text+i) != '\0'; ++i) + continue; + return 0; +} + +// Check varargs and va_copy. +static void +test_varargs (const char *format, ...) +{ + va_list args; + va_start (args, format); + va_list args_copy; + va_copy (args_copy, args); + + const char *str; + int number; + float fnumber; + + while (*format) + { + switch (*format++) + { + case 's': // string + str = va_arg (args_copy, const char *); + break; + case 'd': // int + number = va_arg (args_copy, int); + break; + case 'f': // float + fnumber = va_arg (args_copy, double); + break; + default: + break; + } + } + va_end (args_copy); + va_end (args); +} + +int +main () +{ + + // Check bool. + _Bool success = false; + + // Check restrict. + if (test_restrict ("String literal") == 0) + success = true; + char *restrict newvar = "Another string"; + + // Check varargs. + test_varargs ("s, d' f .", "string", 65, 34.234); + test_varargs_macros (); + + // Check flexible array members. + struct incomplete_array *ia = + malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); + ia->datasize = 10; + for (int i = 0; i < ia->datasize; ++i) + ia->data[i] = i * 1.234; + + // Check named initializers. + struct named_init ni = { + .number = 34, + .name = L"Test wide string", + .average = 543.34343, + }; + + ni.number = 58; + + int dynamic_array[ni.number]; + dynamic_array[ni.number - 1] = 543; + + // work around unused variable warnings + return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' + || dynamic_array[ni.number - 1] != 543); + + ; + return 0; +} +_ACEOF +for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -xc99=all -qlanglvl=extc99 +do + CC="$ac_save_CC $ac_arg" + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c99=$ac_arg +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c99" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c99" in + x) + { $as_echo "$as_me:$LINENO: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:$LINENO: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c99" + { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5 +$as_echo "$ac_cv_prog_cc_c99" >&6; } ;; +esac + + + + if test "x$GCC" = xyes ; then @@ -12582,6 +12801,279 @@ fi fi fi +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=0;; +esac +AM_BACKSLASH='\' + + + + + + + +# Check whether --enable-strict-compilation was given. +if test "${enable_strict_compilation+set}" = set; then + enableval=$enable_strict_compilation; STRICT_COMPILE=$enableval +else + STRICT_COMPILE=no +fi + +if test "x$STRICT_COMPILE" = "xyes"; then + { $as_echo "$as_me:$LINENO: checking whether __SUNPRO_C is declared" >&5 +$as_echo_n "checking whether __SUNPRO_C is declared... " >&6; } +if test "${ac_cv_have_decl___SUNPRO_C+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef __SUNPRO_C + (void) __SUNPRO_C; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl___SUNPRO_C=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl___SUNPRO_C=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl___SUNPRO_C" >&5 +$as_echo "$ac_cv_have_decl___SUNPRO_C" >&6; } +if test "x$ac_cv_have_decl___SUNPRO_C" = x""yes; then + SUNCC="yes" +else + SUNCC="no" +fi + + { $as_echo "$as_me:$LINENO: checking whether __INTEL_COMPILER is declared" >&5 +$as_echo_n "checking whether __INTEL_COMPILER is declared... " >&6; } +if test "${ac_cv_have_decl___INTEL_COMPILER+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef __INTEL_COMPILER + (void) __INTEL_COMPILER; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl___INTEL_COMPILER=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl___INTEL_COMPILER=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl___INTEL_COMPILER" >&5 +$as_echo "$ac_cv_have_decl___INTEL_COMPILER" >&6; } +if test "x$ac_cv_have_decl___INTEL_COMPILER" = x""yes; then + INTELCC="yes" +else + INTELCC="no" +fi + + if test "x$GCC" = xyes ; then + STRICT_CFLAGS="-pedantic -Werror" + elif test "x$SUNCC" = "xyes"; then + STRICT_CFLAGS="-errwarn" + elif test "x$INTELCC" = "xyes"; then + STRICT_CFLAGS="-Werror" + fi +fi +CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" + + + + +# Check whether --with-release-version was given. +if test "${with_release_version+set}" = set; then + withval=$with_release_version; RELEASE_VERSION="$withval" +else + RELEASE_VERSION="" +fi + + if test "x$RELEASE_VERSION" != "x"; then + PACKAGE="$PACKAGE-$RELEASE_VERSION" + PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" + { $as_echo "$as_me:$LINENO: Building with package name set to $PACKAGE" >&5 +$as_echo "$as_me: Building with package name set to $PACKAGE" >&6;} + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1` +_ACEOF + + PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` + if test "x$PVM" = "x"; then + PVM="0" + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_MINOR $PVM +_ACEOF + + PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` + if test "x$PVP" = "x"; then + PVP="0" + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_PATCHLEVEL $PVP +_ACEOF + + + +CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ +mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ +echo 'git directory not found: installing possibly empty changelog.' >&2)" + +distcleancheck_listfiles='find . -type f ! -name ChangeLog -print' + + + + + +if test x$APP_MAN_SUFFIX = x ; then + APP_MAN_SUFFIX=1 +fi +if test x$APP_MAN_DIR = x ; then + APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' +fi + +if test x$LIB_MAN_SUFFIX = x ; then + LIB_MAN_SUFFIX=3 +fi +if test x$LIB_MAN_DIR = x ; then + LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' +fi + +if test x$FILE_MAN_SUFFIX = x ; then + case $host_os in + solaris*) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; + esac +fi +if test x$FILE_MAN_DIR = x ; then + FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' +fi + +if test x$MISC_MAN_SUFFIX = x ; then + case $host_os in + solaris*) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; + esac +fi +if test x$MISC_MAN_DIR = x ; then + MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' +fi + +if test x$DRIVER_MAN_SUFFIX = x ; then + case $host_os in + solaris*) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; + esac +fi +if test x$DRIVER_MAN_DIR = x ; then + DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' +fi + +if test x$ADMIN_MAN_SUFFIX = x ; then + case $host_os in + solaris*) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; + esac +fi +if test x$ADMIN_MAN_DIR = x ; then + ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' +fi + + + + + + + + + + + + + + + if test x"$CC_FOR_BUILD" = x; then @@ -12736,6 +13228,69 @@ rm -f conftest.$ac_ext +# Find perl for "make check" tests in nls/localerules.in + +# Check whether --with-perl was given. +if test "${with_perl+set}" = set; then + withval=$with_perl; PERL=$withval ; { $as_echo "$as_me:$LINENO: checking perl" >&5 +$as_echo_n "checking perl... " >&6; } ; + { $as_echo "$as_me:$LINENO: result: (from --with-perl) $PERL" >&5 +$as_echo "(from --with-perl) $PERL" >&6; } +else + for ac_prog in perl +do + # Extract the first word of "$ac_prog", so it can be a program name with args. +set dummy $ac_prog; ac_word=$2 +{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +$as_echo_n "checking for $ac_word... " >&6; } +if test "${ac_cv_prog_PERL+set}" = set; then + $as_echo_n "(cached) " >&6 +else + if test -n "$PERL"; then + ac_cv_prog_PERL="$PERL" # Let the user override the test. +else +as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +for as_dir in $PATH +do + IFS=$as_save_IFS + test -z "$as_dir" && as_dir=. + for ac_exec_ext in '' $ac_executable_extensions; do + if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then + ac_cv_prog_PERL="$ac_prog" + $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + break 2 + fi +done +done +IFS=$as_save_IFS + +fi +fi +PERL=$ac_cv_prog_PERL +if test -n "$PERL"; then + { $as_echo "$as_me:$LINENO: result: $PERL" >&5 +$as_echo "$PERL" >&6; } +else + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } +fi + + + test -n "$PERL" && break +done +test -n "$PERL" || PERL="no" + +fi + + if test x$PERL != xno; then + HAVE_PERL_TRUE= + HAVE_PERL_FALSE='#' +else + HAVE_PERL_TRUE='#' + HAVE_PERL_FALSE= +fi + + # Build with XCB support? # Check whether --with-xcb was given. @@ -12994,7 +13549,7 @@ fi case "$ac_cv_use_xcb" in no) X11_REQUIRES="xau xcmiscproto bigreqsproto" - X11_EXTRA_DEPS="xau xdmcp" + X11_EXTRA_DEPS="xau" pkg_failed=no { $as_echo "$as_me:$LINENO: checking for XDMCP" >&5 @@ -13050,60 +13605,18 @@ fi # Put the nasty error message in config.log where it belongs echo "$XDMCP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (xdmcp) were not met: - -$XDMCP_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables XDMCP_CFLAGS -and XDMCP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. -" >&5 -$as_echo "$as_me: error: Package requirements (xdmcp) were not met: - -$XDMCP_PKG_ERRORS - -Consider adjusting the PKG_CONFIG_PATH environment variable if you -installed software in a non-standard prefix. - -Alternatively, you may set the environment variables XDMCP_CFLAGS -and XDMCP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. -" >&2;} - { (exit 1); exit 1; }; } + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } elif test $pkg_failed = untried; then - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 -$as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables XDMCP_CFLAGS -and XDMCP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/>. -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: The pkg-config script could not be found or is too old. Make sure it -is in your PATH or set the PKG_CONFIG environment variable to the full -path to pkg-config. - -Alternatively, you may set the environment variables XDMCP_CFLAGS -and XDMCP_LIBS to avoid the need to call pkg-config. -See the pkg-config man page for more details. - -To get pkg-config, see <http://pkg-config.freedesktop.org/>. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } + { $as_echo "$as_me:$LINENO: result: no" >&5 +$as_echo "no" >&6; } else XDMCP_CFLAGS=$pkg_cv_XDMCP_CFLAGS XDMCP_LIBS=$pkg_cv_XDMCP_LIBS { $as_echo "$as_me:$LINENO: result: yes" >&5 $as_echo "yes" >&6; } - : -fi { $as_echo "$as_me:$LINENO: checking for XdmcpWrap in -lXdmcp" >&5 $as_echo_n "checking for XdmcpWrap in -lXdmcp... " >&6; } if test "${ac_cv_lib_Xdmcp_XdmcpWrap+set}" = set; then @@ -13170,11 +13683,88 @@ fi { $as_echo "$as_me:$LINENO: result: $ac_cv_lib_Xdmcp_XdmcpWrap" >&5 $as_echo "$ac_cv_lib_Xdmcp_XdmcpWrap" >&6; } if test "x$ac_cv_lib_Xdmcp_XdmcpWrap" = x""yes; then + + { $as_echo "$as_me:$LINENO: checking for XdmcpWrap in -lXdmcp" >&5 +$as_echo_n "checking for XdmcpWrap in -lXdmcp... " >&6; } +if test "${ac_cv_lib_Xdmcp_XdmcpWrap+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lXdmcp $XDMCP_LIBS $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char XdmcpWrap (); +int +main () +{ +return XdmcpWrap (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_Xdmcp_XdmcpWrap=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_Xdmcp_XdmcpWrap=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_Xdmcp_XdmcpWrap" >&5 +$as_echo "$ac_cv_lib_Xdmcp_XdmcpWrap" >&6; } +if test "x$ac_cv_lib_Xdmcp_XdmcpWrap" = x""yes; then xdmauth="yes" else xdmauth="no" fi + X11_EXTRA_DEPS="$X11_EXTRA_DEPS xdmcp" + +else + + XDMCP_CFLAGS= + XDMCP_LIBS= + +fi + +fi cat >>confdefs.h <<\_ACEOF #define USE_XCB 0 @@ -13525,6 +14115,76 @@ if test "$ac_res" != no; then fi +{ $as_echo "$as_me:$LINENO: checking for main in -lws2_32" >&5 +$as_echo_n "checking for main in -lws2_32... " >&6; } +if test "${ac_cv_lib_ws2_32_main+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lws2_32 $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + + +int +main () +{ +return main (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_ws2_32_main=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_ws2_32_main=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ws2_32_main" >&5 +$as_echo "$ac_cv_lib_ws2_32_main" >&6; } +if test "x$ac_cv_lib_ws2_32_main" = x""yes; then + cat >>confdefs.h <<_ACEOF +#define HAVE_LIBWS2_32 1 +_ACEOF + + LIBS="-lws2_32 $LIBS" + +fi +ac_cv_lib_ws2_32=ac_cv_lib_ws2_32_main + + # Needs to come after above checks for libsocket & libnsl for SVR4 systems # Check whether --enable-ipv6 was given. if test "${enable_ipv6+set}" = set; then @@ -15846,78 +16506,6 @@ else fi - - - -if test x$APP_MAN_SUFFIX = x ; then - APP_MAN_SUFFIX=1 -fi -if test x$APP_MAN_DIR = x ; then - APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' -fi - -if test x$LIB_MAN_SUFFIX = x ; then - LIB_MAN_SUFFIX=3 -fi -if test x$LIB_MAN_DIR = x ; then - LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' -fi - -if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; - esac -fi -if test x$FILE_MAN_DIR = x ; then - FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' -fi - -if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; - esac -fi -if test x$MISC_MAN_DIR = x ; then - MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' -fi - -if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; - esac -fi -if test x$DRIVER_MAN_DIR = x ; then - DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' -fi - -if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; - esac -fi -if test x$ADMIN_MAN_DIR = x ; then - ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' -fi - - - - - - - - - - - - - - - - # Check whether --enable-man-pages was given. if test "${enable_man_pages+set}" = set; then enableval=$enable_man_pages; LIBMAN=$enableval @@ -16859,7 +17447,6 @@ _ACEOF - # Check whether --enable-malloc0returnsnull was given. if test "${enable_malloc0returnsnull+set}" = set; then enableval=$enable_malloc0returnsnull; MALLOC_ZERO_RETURNS_NULL=$enableval @@ -16949,52 +17536,16 @@ fi - -# Check whether --with-release-version was given. -if test "${with_release_version+set}" = set; then - withval=$with_release_version; RELEASE_VERSION="$withval" +# Support AM_SILENT_RULES if automake-1.11 or later is used +HAVE_AM_SILENT_RULES=yes + if test x$HAVE_AM_SILENT_RULES != x; then + HAVE_AM_SILENT_RULES_TRUE= + HAVE_AM_SILENT_RULES_FALSE='#' else - RELEASE_VERSION="" + HAVE_AM_SILENT_RULES_TRUE='#' + HAVE_AM_SILENT_RULES_FALSE= fi - if test "x$RELEASE_VERSION" != "x"; then - PACKAGE="$PACKAGE-$RELEASE_VERSION" - PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" - { $as_echo "$as_me:$LINENO: Building with package name set to $PACKAGE" >&5 -$as_echo "$as_me: Building with package name set to $PACKAGE" >&6;} - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1` -_ACEOF - - PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` - if test "x$PVM" = "x"; then - PVM="0" - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_MINOR $PVM -_ACEOF - - PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` - if test "x$PVP" = "x"; then - PVP="0" - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_PATCHLEVEL $PVP -_ACEOF - - - -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ -mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" - -distcleancheck_listfiles='find . -type f ! -name ChangeLog -print' - - ac_config_files="$ac_config_files Makefile include/Makefile man/Makefile man/xkb/Makefile src/Makefile src/util/Makefile src/xcms/Makefile src/xlibi18n/Makefile modules/Makefile modules/im/Makefile modules/im/ximcp/Makefile modules/lc/Makefile modules/lc/def/Makefile modules/lc/gen/Makefile modules/lc/Utf8/Makefile modules/lc/xlocale/Makefile modules/om/Makefile modules/om/generic/Makefile src/xkb/Makefile nls/Makefile nls/am_ET.UTF-8/Makefile nls/armscii-8/Makefile nls/C/Makefile nls/el_GR.UTF-8/Makefile nls/en_US.UTF-8/Makefile nls/fi_FI.UTF-8/Makefile nls/georgian-academy/Makefile nls/georgian-ps/Makefile nls/ibm-cp1133/Makefile nls/iscii-dev/Makefile nls/isiri-3342/Makefile nls/iso8859-1/Makefile nls/iso8859-10/Makefile nls/iso8859-11/Makefile nls/iso8859-13/Makefile nls/iso8859-14/Makefile nls/iso8859-15/Makefile nls/iso8859-2/Makefile nls/iso8859-3/Makefile nls/iso8859-4/Makefile nls/iso8859-5/Makefile nls/iso8859-6/Makefile nls/iso8859-7/Makefile nls/iso8859-8/Makefile nls/iso8859-9/Makefile nls/iso8859-9e/Makefile nls/ja/Makefile nls/ja.JIS/Makefile nls/ja_JP.UTF-8/Makefile nls/ja.S90/Makefile nls/ja.SJIS/Makefile nls/ja.U90/Makefile nls/ko/Makefile nls/koi8-c/Makefile nls/koi8-r/Makefile nls/koi8-u/Makefile nls/ko_KR.UTF-8/Makefile nls/microsoft-cp1251/Makefile nls/microsoft-cp1255/Makefile nls/microsoft-cp1256/Makefile nls/mulelao-1/Makefile nls/nokhchi-1/Makefile nls/pt_BR.UTF-8/Makefile nls/ru_RU.UTF-8/Makefile nls/tatar-cyr/Makefile nls/th_TH/Makefile nls/th_TH.UTF-8/Makefile nls/tscii-0/Makefile nls/vi_VN.tcvn/Makefile nls/vi_VN.viscii/Makefile nls/zh_CN/Makefile nls/zh_CN.gb18030/Makefile nls/zh_CN.gbk/Makefile nls/zh_CN.UTF-8/Makefile nls/zh_HK.big5/Makefile nls/zh_HK.big5hkscs/Makefile nls/zh_HK.UTF-8/Makefile nls/zh_TW/Makefile nls/zh_TW.big5/Makefile nls/zh_TW.UTF-8/Makefile x11.pc x11-xcb.pc" @@ -17131,6 +17682,13 @@ $as_echo "$as_me: error: conditional \"am__fastdepCC\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi +if test -z "${HAVE_PERL_TRUE}" && test -z "${HAVE_PERL_FALSE}"; then + { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_PERL\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +$as_echo "$as_me: error: conditional \"HAVE_PERL\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi if test -z "${XCB_TRUE}" && test -z "${XCB_FALSE}"; then { { $as_echo "$as_me:$LINENO: error: conditional \"XCB\" was never defined. Usually this means the macro was only invoked conditionally." >&5 @@ -17208,6 +17766,13 @@ $as_echo "$as_me: error: conditional \"MAKE_LINT_LIB\" was never defined. Usually this means the macro was only invoked conditionally." >&2;} { (exit 1); exit 1; }; } fi +if test -z "${HAVE_AM_SILENT_RULES_TRUE}" && test -z "${HAVE_AM_SILENT_RULES_FALSE}"; then + { { $as_echo "$as_me:$LINENO: error: conditional \"HAVE_AM_SILENT_RULES\" was never defined. +Usually this means the macro was only invoked conditionally." >&5 +$as_echo "$as_me: error: conditional \"HAVE_AM_SILENT_RULES\" was never defined. +Usually this means the macro was only invoked conditionally." >&2;} + { (exit 1); exit 1; }; } +fi : ${CONFIG_STATUS=./config.status} ac_write_fail=0 @@ -17530,7 +18095,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libX11 $as_me 1.2.99.901, which was +This file was extended by libX11 $as_me 1.3, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -17593,7 +18158,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -libX11 config.status 1.2.99.901 +libX11 config.status 1.3 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/libX11/configure.ac b/libX11/configure.ac index 45e9d74ce..655ea400f 100644 --- a/libX11/configure.ac +++ b/libX11/configure.ac @@ -3,7 +3,7 @@ AC_PREREQ(2.60) AC_INIT([libX11], - 1.2.99.901, + 1.3, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libX11) AC_CONFIG_SRCDIR([Makefile.am]) @@ -14,9 +14,9 @@ AM_MAINTAINER_MODE AM_CONFIG_HEADER([src/config.h]) AC_CONFIG_HEADER([include/X11/XlibConf.h]) -# Require xorg-macros: XORG_CWARNFLAGS, XORG_CHANGELOG, XORG_WITH_LINT -m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2 or later before running autoconf/autogen])]) -XORG_MACROS_VERSION(1.2) +# Require xorg-macros: XORG_DEFAULT_OPTIONS, XORG_CHANGELOG, XORG_WITH_LINT +m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.3 or later before running autoconf/autogen])]) +XORG_MACROS_VERSION(1.3) # Set common system defines for POSIX extensions, such as _GNU_SOURCE # Must be called before any macros that run the compiler (like AC_PROG_LIBTOOL) @@ -27,7 +27,7 @@ AC_USE_SYSTEM_EXTENSIONS AC_PROG_LIBTOOL DOLT AC_PROG_CC -XORG_CWARNFLAGS +XORG_DEFAULT_OPTIONS if test x"$CC_FOR_BUILD" = x; then if test x"$cross_compiling" = xyes; then @@ -40,6 +40,15 @@ AC_SUBST([CC_FOR_BUILD]) XORG_PROG_RAWCPP +# Find perl for "make check" tests in nls/localerules.in +AC_ARG_WITH(perl, + AC_HELP_STRING([--with-perl=<path>], + [path to perl interpreter for build-time tests]), + [PERL=$withval ; AC_MSG_CHECKING([perl]) ; + AC_MSG_RESULT([(from --with-perl) $PERL])], + AC_CHECK_PROGS([PERL], [perl], [no])) +AM_CONDITIONAL(HAVE_PERL, test x$PERL != xno) + # Build with XCB support? AC_ARG_WITH(xcb, AC_HELP_STRING([--with-xcb], [use XCB for low-level protocol implementation]), @@ -54,9 +63,18 @@ AC_SUBST(XPROTO_CFLAGS) case "$ac_cv_use_xcb" in no) X11_REQUIRES="xau xcmiscproto bigreqsproto" - X11_EXTRA_DEPS="xau xdmcp" - PKG_CHECK_MODULES(XDMCP, xdmcp) - AC_CHECK_LIB(Xdmcp, XdmcpWrap, [xdmauth="yes"], [xdmauth="no"], [$XDMCP_LIBS]) + X11_EXTRA_DEPS="xau" + PKG_CHECK_MODULES(XDMCP, xdmcp, + AC_CHECK_LIB(Xdmcp, XdmcpWrap, + [ + AC_CHECK_LIB(Xdmcp, XdmcpWrap, [xdmauth="yes"], [xdmauth="no"], [$XDMCP_LIBS]) + X11_EXTRA_DEPS="$X11_EXTRA_DEPS xdmcp" + ], + [ + XDMCP_CFLAGS= + XDMCP_LIBS= + ], [$XDMCP_LIBS]), + [AC_MSG_RESULT(no)]) AC_DEFINE(USE_XCB, 0, [Use XCB for low-level protocol implementation]) ;; *) @@ -321,8 +339,6 @@ AC_ARG_ENABLE(xkb, [Disable XKB support *EXPERIMENTAL*]), [XKB=$enableval],[XKB=yes]) -XORG_MANPAGE_SECTIONS - AC_ARG_ENABLE(man-pages, AC_HELP_STRING([--enable-man-pages=section], [Choose manual section for installing man pages]), @@ -410,10 +426,11 @@ AC_DEFINE_DIR(XKEYSYMDB, XKEYSYMDB, [Location of keysym database]) XERRORDB="${X11_DATADIR}/XErrorDB" AC_DEFINE_DIR(XERRORDB, XERRORDB, [Location of error message database]) - XORG_CHECK_MALLOC_ZERO -XORG_RELEASE_VERSION -XORG_CHANGELOG + +# Support AM_SILENT_RULES if automake-1.11 or later is used +m4_ifdef([AM_SILENT_RULES],[HAVE_AM_SILENT_RULES=yes]) +AM_CONDITIONAL(HAVE_AM_SILENT_RULES, test x$HAVE_AM_SILENT_RULES != x) AC_OUTPUT([Makefile include/Makefile diff --git a/libX11/cpprules.in b/libX11/cpprules.in index 52e34a012..e49341f09 100644 --- a/libX11/cpprules.in +++ b/libX11/cpprules.in @@ -25,5 +25,13 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +if HAVE_AM_SILENT_RULES +# Support for automake 1.11 AM_SILENT_RULES +cpp_verbose = $(cpp_verbose_$(V)) +cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +cpp_verbose_0 = @echo " CPP " $@; +endif HAVE_AM_SILENT_RULES + .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ diff --git a/libX11/depcomp b/libX11/depcomp index e5f9736c7..df8eea7e4 100644 --- a/libX11/depcomp +++ b/libX11/depcomp @@ -1,10 +1,10 @@ #! /bin/sh # depcomp - compile a program generating dependencies as side-effects -scriptversion=2007-03-29.01 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007 Free Software -# Foundation, Inc. +# Copyright (C) 1999, 2000, 2003, 2004, 2005, 2006, 2007, 2009 Free +# Software Foundation, Inc. # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -17,9 +17,7 @@ scriptversion=2007-03-29.01 # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program. If not, see <http://www.gnu.org/licenses/>. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -87,6 +85,15 @@ if test "$depmode" = dashXmstdout; then depmode=dashmstdout fi +cygpath_u="cygpath -u -f -" +if test "$depmode" = msvcmsys; then + # This is just like msvisualcpp but w/o cygpath translation. + # Just convert the backslash-escaped backslashes to single forward + # slashes to satisfy depend.m4 + cygpath_u="sed s,\\\\\\\\,/,g" + depmode=msvisualcpp +fi + case "$depmode" in gcc3) ## gcc 3 implements dependency tracking that does exactly what @@ -192,14 +199,14 @@ sgi) ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' | \ tr ' -' ' ' >> $depfile - echo >> $depfile +' ' ' >> "$depfile" + echo >> "$depfile" # The second pass generates a dummy entry for each header file. tr ' ' ' ' < "$tmpdepfile" \ | sed -e 's/^.*\.o://' -e 's/#.*$//' -e '/^$/ d' -e 's/$/:/' \ - >> $depfile + >> "$depfile" else # The sourcefile does not contain any dependencies, so just # store a dummy comment line, to avoid errors with the Makefile @@ -328,7 +335,12 @@ hp2) if test -f "$tmpdepfile"; then sed -e "s,^.*\.[a-z]*:,$object:," "$tmpdepfile" > "$depfile" # Add `dependent.h:' lines. - sed -ne '2,${; s/^ *//; s/ \\*$//; s/$/:/; p;}' "$tmpdepfile" >> "$depfile" + sed -ne '2,${ + s/^ *// + s/ \\*$// + s/$/:/ + p + }' "$tmpdepfile" >> "$depfile" else echo "#dummy" > "$depfile" fi @@ -404,7 +416,7 @@ dashmstdout) # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -455,32 +467,39 @@ makedepend) "$@" || exit $? # Remove any Libtool call if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift fi # X makedepend shift - cleared=no - for arg in "$@"; do + cleared=no eat=no + for arg + do case $cleared in no) set ""; shift cleared=yes ;; esac + if test $eat = yes; then + eat=no + continue + fi case "$arg" in -D*|-I*) set fnord "$@" "$arg"; shift ;; # Strip any option that makedepend may not understand. Remove # the object too, otherwise makedepend will parse it as a source file. + -arch) + eat=yes ;; -*|$object) ;; *) set fnord "$@" "$arg"; shift ;; esac done - obj_suffix="`echo $object | sed 's/^.*\././'`" + obj_suffix=`echo "$object" | sed 's/^.*\././'` touch "$tmpdepfile" ${MAKEDEPEND-makedepend} -o"$obj_suffix" -f"$tmpdepfile" "$@" rm -f "$depfile" @@ -500,7 +519,7 @@ cpp) # Remove the call to Libtool. if test "$libtool" = yes; then - while test $1 != '--mode=compile'; do + while test "X$1" != 'X--mode=compile'; do shift done shift @@ -538,13 +557,27 @@ cpp) msvisualcpp) # Important note: in order to support this mode, a compiler *must* - # always write the preprocessed file to stdout, regardless of -o, - # because we must use -o when running libtool. + # always write the preprocessed file to stdout. "$@" || exit $? + + # Remove the call to Libtool. + if test "$libtool" = yes; then + while test "X$1" != 'X--mode=compile'; do + shift + done + shift + fi + IFS=" " for arg do case "$arg" in + -o) + shift + ;; + $object) + shift + ;; "-Gm"|"/Gm"|"-Gi"|"/Gi"|"-ZI"|"/ZI") set fnord "$@" shift @@ -557,16 +590,23 @@ msvisualcpp) ;; esac done - "$@" -E | - sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::echo "`cygpath -u \\"\1\\"`":p' | sort | uniq > "$tmpdepfile" + "$@" -E 2>/dev/null | + sed -n '/^#line [0-9][0-9]* "\([^"]*\)"/ s::\1:p' | $cygpath_u | sort -u > "$tmpdepfile" rm -f "$depfile" echo "$object : \\" > "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s:: \1 \\:p' >> "$depfile" echo " " >> "$depfile" - . "$tmpdepfile" | sed 's% %\\ %g' | sed -n '/^\(.*\)$/ s::\1\::p' >> "$depfile" + sed < "$tmpdepfile" -n -e 's% %\\ %g' -e '/^\(.*\)$/ s::\1\::p' >> "$depfile" rm -f "$tmpdepfile" ;; +msvcmsys) + # This case exists only to let depend.m4 do its work. It works by + # looking at the text of this script. This case will never be run, + # since it is checked for above. + exit 1 + ;; + none) exec "$@" ;; @@ -585,5 +625,6 @@ exit 0 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff --git a/libX11/include/Makefile.in b/libX11/include/Makefile.in index 5d5af26ea..245351169 100644 --- a/libX11/include/Makefile.in +++ b/libX11/include/Makefile.in @@ -48,6 +48,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -84,6 +90,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -160,6 +167,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/install-sh b/libX11/install-sh index a5897de6e..6781b987b 100644 --- a/libX11/install-sh +++ b/libX11/install-sh @@ -1,7 +1,7 @@ #!/bin/sh # install - install a program, script, or datafile -scriptversion=2006-12-25.00 +scriptversion=2009-04-28.21; # UTC # This originates from X11R5 (mit/util/scripts/install.sh), which was # later released in X11R6 (xc/config/util/install.sh) with the @@ -515,5 +515,6 @@ done # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff --git a/libX11/man/AllPlanes.man b/libX11/man/AllPlanes.man index 829a45d22..f530a93ea 100644 --- a/libX11/man/AllPlanes.man +++ b/libX11/man/AllPlanes.man @@ -372,9 +372,9 @@ The .ZN VendorRelease macro returns a number related to a vendor's release of the X server. .SH "SEE ALSO" -BlackPixelOfScreen(3X11), -ImageByteOrder(3X11), -IsCursorKey(3X11), -XOpenDisplay(3X11) +BlackPixelOfScreen(__libmansuffix__), +ImageByteOrder(__libmansuffix__), +IsCursorKey(__libmansuffix__), +XOpenDisplay(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/BlackPixelOfScreen.man b/libX11/man/BlackPixelOfScreen.man index 68f38ed15..59f3b26eb 100644 --- a/libX11/man/BlackPixelOfScreen.man +++ b/libX11/man/BlackPixelOfScreen.man @@ -281,8 +281,8 @@ The .ZN WidthMMOfScreen macro returns the width of the specified screen in millimeters. .SH "SEE ALSO" -AllPlanes(3X11), -ImageByteOrder(3X11), -IsCursorKey(3X11) +AllPlanes(__libmansuffix__), +ImageByteOrder(__libmansuffix__), +IsCursorKey(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/DisplayOfCCC.man b/libX11/man/DisplayOfCCC.man index 512a1736d..6d9b70789 100644 --- a/libX11/man/DisplayOfCCC.man +++ b/libX11/man/DisplayOfCCC.man @@ -180,10 +180,10 @@ The macro returns the client white point of the screen associated with the specified CCC. .SH "SEE ALSO" -XcmsCCCOfColormap(3X11), -XcmsConvertColors(3X11), -XcmsCreateCCC(3X11), -XcmsDefaultCCC(3X11), -XcmsSetWhitePoint(3X11) +XcmsCCCOfColormap(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), +XcmsCreateCCC(__libmansuffix__), +XcmsDefaultCCC(__libmansuffix__), +XcmsSetWhitePoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/ImageByteOrder.man b/libX11/man/ImageByteOrder.man index 378275056..35941ceee 100644 --- a/libX11/man/ImageByteOrder.man +++ b/libX11/man/ImageByteOrder.man @@ -238,9 +238,9 @@ typedef struct { } XPixmapFormatValues; .De .SH "SEE ALSO" -AllPlanes(3X11), -BlackPixelOfScreen(3X11), -IsCursorKey(3X11), -XFree(3X11) +AllPlanes(__libmansuffix__), +BlackPixelOfScreen(__libmansuffix__), +IsCursorKey(__libmansuffix__), +XFree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/IsCursorKey.man b/libX11/man/IsCursorKey.man index d37ea1ba2..f96f8dc63 100644 --- a/libX11/man/IsCursorKey.man +++ b/libX11/man/IsCursorKey.man @@ -205,8 +205,8 @@ macro returns .ZN True if the specified KeySym is a vendor-private keypad key. .SH "SEE ALSO" -AllPlanes(3X11), -BlackPixelOfScreen(3X11), -ImageByteOrder(3X11) +AllPlanes(__libmansuffix__), +BlackPixelOfScreen(__libmansuffix__), +ImageByteOrder(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/Makefile.am b/libX11/man/Makefile.am index b21d8fb9a..328e386c2 100644 --- a/libX11/man/Makefile.am +++ b/libX11/man/Makefile.am @@ -199,8 +199,6 @@ libman_PRE = \ if MANPAGES libman_DATA = $(libman_PRE:man=@LIB_MAN_SUFFIX@) \ $(all_shadows:=.@LIB_MAN_SUFFIX@) - -BUILT_SOURCES = shadows.DONE endif EXTRA_DIST = $(libman_PRE) @@ -220,7 +218,7 @@ MANDEFS = -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ CPP_MAN_FLAGS = $(MANDEFS) $(EXTRAMANDEFS) .man.$(LIB_MAN_SUFFIX): - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Generate man page shadow files (Replaces InstallManPageAliases from Imake) all_shadows = \ @@ -1083,431 +1081,570 @@ XmbTextPerCharExtents_shadows = \ XwcTextPerCharExtents \ Xutf8TextPerCharExtents -shadows.DONE: - -rm -f $(all_aliases:=.@LIB_MAN_SUFFIX@) - (for i in $(AllPlanes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/AllPlanes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(BlackPixelOfScreen_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/BlackPixelOfScreen.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(DisplayOfCCC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/DisplayOfCCC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(ImageByteOrder_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/ImageByteOrder.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(IsCursorKey_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/IsCursorKey.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocClassHint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocClassHint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocIconSize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocIconSize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocStandardColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocStandardColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocSizeHints_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocSizeHints.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocWMHints_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocWMHints.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAddHost_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAddHost.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAnyEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAnyEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XButtonEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XButtonEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeKeyboardControl_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardControl.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeKeyboardMapping_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardMapping.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangePointerControl_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangePointerControl.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeSaveSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeSaveSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeWindowAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XClearArea_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XClearArea.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XConfigureWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XConfigureWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCopyArea_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCopyArea.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateFontCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateFontSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateGC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateGC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateIC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateIC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInitImage_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInitImage.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateOC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateOC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreatePixmap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreatePixmap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDefineCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDefineCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDestroyWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDestroyWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawArc_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawArc.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawImageString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawLine_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawLine.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawPoint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawPoint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawRectangle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawRectangle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawText_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawText.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XEmptyRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XEmptyRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFillRectangle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFillRectangle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFlush_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFlush.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFontsOfFontSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFontsOfFontSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGraphicsExposeEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGraphicsExposeEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmGetFileDatabase_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmGetFileDatabase.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmGetResource_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmGetResource.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetEventData_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetEventData.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetVisualInfo_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetVisualInfo.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetWindowProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabButton_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabButton.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabKey_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabKey.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabKeyboard_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabKeyboard.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabPointer_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabPointer.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabServer_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabServer.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIconifyWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIconifyWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIfEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIfEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmInitialize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmInitialize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInstallColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInstallColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAddConnectionWatch_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAddConnectionWatch.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIntersectRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIntersectRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInternAtom_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInternAtom.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XListFonts_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XListFonts.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XLoadFont_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XLoadFont.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XLookupKeysym_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XLookupKeysym.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmMergeDatabases_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmMergeDatabases.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XMapEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XMapEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XMapWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XMapWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XNextEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XNextEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenDisplay_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenDisplay.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenIM_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenIM.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenOM_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenOM.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XParseGeometry_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XParseGeometry.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XPolygonRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XPolygonRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XPutImage_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XPutImage.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmPutResource_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmPutResource.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryBestSize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryBestSize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryExtension_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryExtension.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XResourceManagerString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XResourceManagerString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XRaiseWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XRaiseWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XReadBitmapFile_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XReadBitmapFile.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XRecolorCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XRecolorCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSaveContext_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSaveContext.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetICFocus_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetICFocus.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetICValues_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetICValues.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStringListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStringListToTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetArcMode_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetArcMode.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetClipOrigin_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetClipOrigin.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetCloseDownMode_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetCloseDownMode.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetCommand_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetCommand.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetErrorHandler_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetErrorHandler.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSendEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSendEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetFillStyle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetFillStyle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetFontPath_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetFontPath.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetInputFocus_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetInputFocus.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetLineAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetLineAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetPointerMapping_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetPointerMapping.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetScreenSaver_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetScreenSaver.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetSelectionOwner_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetSelectionOwner.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetState_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetState.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTransientForHint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTransientForHint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTile_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTile.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMClientMachine_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMClientMachine.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMColormapWindows_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMColormapWindows.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMIconName_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMIconName.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMName_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMName.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMProperties_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProperties.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMProtocols_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProtocols.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStoreBytes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStoreBytes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStoreColors_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStoreColors.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStringToKeysym_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStringToKeysym.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSupportsLocale_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSupportsLocale.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSynchronize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSynchronize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextListToTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XTextExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XTextExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XTextWidth_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XTextWidth.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInitThreads_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInitThreads.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmUniqueQuark_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmUniqueQuark.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XUnmapWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XUnmapWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCCCOfColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCCCOfColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsAllocColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsAllocColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCreateCCC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCreateCCC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCIELabQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELabQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCIELuvQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELuvQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsQueryBlack_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryBlack.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsQueryColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsStoreColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsStoreColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsSetWhitePoint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsSetWhitePoint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsTekHVCQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsTekHVCQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawImageString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawText_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawText.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbLookupString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbLookupString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbResetIC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbResetIC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextEscapement_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextEscapement.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextPerCharExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextPerCharExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) +AllPlanes_shadowmen = $(AllPlanes_shadows:=.@LIB_MAN_SUFFIX@) +$(AllPlanes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/AllPlanes.$(LIB_MAN_SUFFIX)" > $@ + +BlackPixelOfScreen_shadowmen = $(BlackPixelOfScreen_shadows:=.@LIB_MAN_SUFFIX@) +$(BlackPixelOfScreen_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/BlackPixelOfScreen.$(LIB_MAN_SUFFIX)" > $@ + +DisplayOfCCC_shadowmen = $(DisplayOfCCC_shadows:=.@LIB_MAN_SUFFIX@) +$(DisplayOfCCC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/DisplayOfCCC.$(LIB_MAN_SUFFIX)" > $@ + +ImageByteOrder_shadowmen = $(ImageByteOrder_shadows:=.@LIB_MAN_SUFFIX@) +$(ImageByteOrder_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/ImageByteOrder.$(LIB_MAN_SUFFIX)" > $@ + +IsCursorKey_shadowmen = $(IsCursorKey_shadows:=.@LIB_MAN_SUFFIX@) +$(IsCursorKey_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/IsCursorKey.$(LIB_MAN_SUFFIX)" > $@ + +XAllocClassHint_shadowmen = $(XAllocClassHint_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocClassHint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocClassHint.$(LIB_MAN_SUFFIX)" > $@ + +XAllocIconSize_shadowmen = $(XAllocIconSize_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocIconSize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocIconSize.$(LIB_MAN_SUFFIX)" > $@ + +XAllocStandardColormap_shadowmen = $(XAllocStandardColormap_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocStandardColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocStandardColormap.$(LIB_MAN_SUFFIX)" > $@ + +XAllocSizeHints_shadowmen = $(XAllocSizeHints_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocSizeHints_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocSizeHints.$(LIB_MAN_SUFFIX)" > $@ + +XAllocWMHints_shadowmen = $(XAllocWMHints_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocWMHints_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocWMHints.$(LIB_MAN_SUFFIX)" > $@ + +XAddHost_shadowmen = $(XAddHost_shadows:=.@LIB_MAN_SUFFIX@) +$(XAddHost_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAddHost.$(LIB_MAN_SUFFIX)" > $@ + +XAllocColor_shadowmen = $(XAllocColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XAllocColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocColor.$(LIB_MAN_SUFFIX)" > $@ + +XAnyEvent_shadowmen = $(XAnyEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XAnyEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAnyEvent.$(LIB_MAN_SUFFIX)" > $@ + +XButtonEvent_shadowmen = $(XButtonEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XButtonEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XButtonEvent.$(LIB_MAN_SUFFIX)" > $@ + +XChangeKeyboardControl_shadowmen = $(XChangeKeyboardControl_shadows:=.@LIB_MAN_SUFFIX@) +$(XChangeKeyboardControl_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardControl.$(LIB_MAN_SUFFIX)" > $@ + +XChangeKeyboardMapping_shadowmen = $(XChangeKeyboardMapping_shadows:=.@LIB_MAN_SUFFIX@) +$(XChangeKeyboardMapping_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardMapping.$(LIB_MAN_SUFFIX)" > $@ + +XChangePointerControl_shadowmen = $(XChangePointerControl_shadows:=.@LIB_MAN_SUFFIX@) +$(XChangePointerControl_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangePointerControl.$(LIB_MAN_SUFFIX)" > $@ + +XChangeSaveSet_shadowmen = $(XChangeSaveSet_shadows:=.@LIB_MAN_SUFFIX@) +$(XChangeSaveSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeSaveSet.$(LIB_MAN_SUFFIX)" > $@ + +XChangeWindowAttributes_shadowmen = $(XChangeWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) +$(XChangeWindowAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeWindowAttributes.$(LIB_MAN_SUFFIX)" > $@ + +XClearArea_shadowmen = $(XClearArea_shadows:=.@LIB_MAN_SUFFIX@) +$(XClearArea_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XClearArea.$(LIB_MAN_SUFFIX)" > $@ + +XConfigureWindow_shadowmen = $(XConfigureWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XConfigureWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XConfigureWindow.$(LIB_MAN_SUFFIX)" > $@ + +XCopyArea_shadowmen = $(XCopyArea_shadows:=.@LIB_MAN_SUFFIX@) +$(XCopyArea_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCopyArea.$(LIB_MAN_SUFFIX)" > $@ + +XCreateColormap_shadowmen = $(XCreateColormap_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateColormap.$(LIB_MAN_SUFFIX)" > $@ + +XCreateFontCursor_shadowmen = $(XCreateFontCursor_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateFontCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontCursor.$(LIB_MAN_SUFFIX)" > $@ + +XCreateFontSet_shadowmen = $(XCreateFontSet_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateFontSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontSet.$(LIB_MAN_SUFFIX)" > $@ + +XCreateGC_shadowmen = $(XCreateGC_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateGC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateGC.$(LIB_MAN_SUFFIX)" > $@ + +XCreateIC_shadowmen = $(XCreateIC_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateIC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateIC.$(LIB_MAN_SUFFIX)" > $@ + +XInitImage_shadowmen = $(XInitImage_shadows:=.@LIB_MAN_SUFFIX@) +$(XInitImage_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInitImage.$(LIB_MAN_SUFFIX)" > $@ + +XCreateOC_shadowmen = $(XCreateOC_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateOC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateOC.$(LIB_MAN_SUFFIX)" > $@ + +XCreatePixmap_shadowmen = $(XCreatePixmap_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreatePixmap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreatePixmap.$(LIB_MAN_SUFFIX)" > $@ + +XCreateRegion_shadowmen = $(XCreateRegion_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateRegion.$(LIB_MAN_SUFFIX)" > $@ + +XCreateWindow_shadowmen = $(XCreateWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XCreateWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateWindow.$(LIB_MAN_SUFFIX)" > $@ + +XDefineCursor_shadowmen = $(XDefineCursor_shadows:=.@LIB_MAN_SUFFIX@) +$(XDefineCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDefineCursor.$(LIB_MAN_SUFFIX)" > $@ + +XDestroyWindow_shadowmen = $(XDestroyWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XDestroyWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDestroyWindow.$(LIB_MAN_SUFFIX)" > $@ + +XDrawArc_shadowmen = $(XDrawArc_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawArc_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawArc.$(LIB_MAN_SUFFIX)" > $@ + +XDrawImageString_shadowmen = $(XDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawImageString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawImageString.$(LIB_MAN_SUFFIX)" > $@ + +XDrawLine_shadowmen = $(XDrawLine_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawLine_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawLine.$(LIB_MAN_SUFFIX)" > $@ + +XDrawPoint_shadowmen = $(XDrawPoint_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawPoint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawPoint.$(LIB_MAN_SUFFIX)" > $@ + +XDrawRectangle_shadowmen = $(XDrawRectangle_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawRectangle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawRectangle.$(LIB_MAN_SUFFIX)" > $@ + +XDrawString_shadowmen = $(XDrawString_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawString.$(LIB_MAN_SUFFIX)" > $@ + +XDrawText_shadowmen = $(XDrawText_shadows:=.@LIB_MAN_SUFFIX@) +$(XDrawText_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawText.$(LIB_MAN_SUFFIX)" > $@ + +XEmptyRegion_shadowmen = $(XEmptyRegion_shadows:=.@LIB_MAN_SUFFIX@) +$(XEmptyRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XEmptyRegion.$(LIB_MAN_SUFFIX)" > $@ + +XFillRectangle_shadowmen = $(XFillRectangle_shadows:=.@LIB_MAN_SUFFIX@) +$(XFillRectangle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFillRectangle.$(LIB_MAN_SUFFIX)" > $@ + +XFlush_shadowmen = $(XFlush_shadows:=.@LIB_MAN_SUFFIX@) +$(XFlush_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFlush.$(LIB_MAN_SUFFIX)" > $@ + +XFontsOfFontSet_shadowmen = $(XFontsOfFontSet_shadows:=.@LIB_MAN_SUFFIX@) +$(XFontsOfFontSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFontsOfFontSet.$(LIB_MAN_SUFFIX)" > $@ + +XGraphicsExposeEvent_shadowmen = $(XGraphicsExposeEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XGraphicsExposeEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGraphicsExposeEvent.$(LIB_MAN_SUFFIX)" > $@ + +XrmGetFileDatabase_shadowmen = $(XrmGetFileDatabase_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmGetFileDatabase_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmGetFileDatabase.$(LIB_MAN_SUFFIX)" > $@ + +XrmGetResource_shadowmen = $(XrmGetResource_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmGetResource_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmGetResource.$(LIB_MAN_SUFFIX)" > $@ + +XGetEventData_shadowmen = $(XGetEventData_shadows:=.@LIB_MAN_SUFFIX@) +$(XGetEventData_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetEventData.$(LIB_MAN_SUFFIX)" > $@ + +XGetVisualInfo_shadowmen = $(XGetVisualInfo_shadows:=.@LIB_MAN_SUFFIX@) +$(XGetVisualInfo_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetVisualInfo.$(LIB_MAN_SUFFIX)" > $@ + +XGetWindowAttributes_shadowmen = $(XGetWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) +$(XGetWindowAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowAttributes.$(LIB_MAN_SUFFIX)" > $@ + +XGetWindowProperty_shadowmen = $(XGetWindowProperty_shadows:=.@LIB_MAN_SUFFIX@) +$(XGetWindowProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowProperty.$(LIB_MAN_SUFFIX)" > $@ + +XGrabButton_shadowmen = $(XGrabButton_shadows:=.@LIB_MAN_SUFFIX@) +$(XGrabButton_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabButton.$(LIB_MAN_SUFFIX)" > $@ + +XGrabKey_shadowmen = $(XGrabKey_shadows:=.@LIB_MAN_SUFFIX@) +$(XGrabKey_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabKey.$(LIB_MAN_SUFFIX)" > $@ + +XGrabKeyboard_shadowmen = $(XGrabKeyboard_shadows:=.@LIB_MAN_SUFFIX@) +$(XGrabKeyboard_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabKeyboard.$(LIB_MAN_SUFFIX)" > $@ + +XGrabPointer_shadowmen = $(XGrabPointer_shadows:=.@LIB_MAN_SUFFIX@) +$(XGrabPointer_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabPointer.$(LIB_MAN_SUFFIX)" > $@ + +XGrabServer_shadowmen = $(XGrabServer_shadows:=.@LIB_MAN_SUFFIX@) +$(XGrabServer_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabServer.$(LIB_MAN_SUFFIX)" > $@ + +XIconifyWindow_shadowmen = $(XIconifyWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XIconifyWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIconifyWindow.$(LIB_MAN_SUFFIX)" > $@ + +XIfEvent_shadowmen = $(XIfEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XIfEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIfEvent.$(LIB_MAN_SUFFIX)" > $@ + +XrmInitialize_shadowmen = $(XrmInitialize_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmInitialize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmInitialize.$(LIB_MAN_SUFFIX)" > $@ + +XInstallColormap_shadowmen = $(XInstallColormap_shadows:=.@LIB_MAN_SUFFIX@) +$(XInstallColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInstallColormap.$(LIB_MAN_SUFFIX)" > $@ + +XAddConnectionWatch_shadowmen = $(XAddConnectionWatch_shadows:=.@LIB_MAN_SUFFIX@) +$(XAddConnectionWatch_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAddConnectionWatch.$(LIB_MAN_SUFFIX)" > $@ + +XIntersectRegion_shadowmen = $(XIntersectRegion_shadows:=.@LIB_MAN_SUFFIX@) +$(XIntersectRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIntersectRegion.$(LIB_MAN_SUFFIX)" > $@ + +XInternAtom_shadowmen = $(XInternAtom_shadows:=.@LIB_MAN_SUFFIX@) +$(XInternAtom_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInternAtom.$(LIB_MAN_SUFFIX)" > $@ + +XListFonts_shadowmen = $(XListFonts_shadows:=.@LIB_MAN_SUFFIX@) +$(XListFonts_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XListFonts.$(LIB_MAN_SUFFIX)" > $@ + +XLoadFont_shadowmen = $(XLoadFont_shadows:=.@LIB_MAN_SUFFIX@) +$(XLoadFont_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XLoadFont.$(LIB_MAN_SUFFIX)" > $@ + +XLookupKeysym_shadowmen = $(XLookupKeysym_shadows:=.@LIB_MAN_SUFFIX@) +$(XLookupKeysym_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XLookupKeysym.$(LIB_MAN_SUFFIX)" > $@ + +XrmMergeDatabases_shadowmen = $(XrmMergeDatabases_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmMergeDatabases_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmMergeDatabases.$(LIB_MAN_SUFFIX)" > $@ + +XMapEvent_shadowmen = $(XMapEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XMapEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XMapEvent.$(LIB_MAN_SUFFIX)" > $@ + +XMapWindow_shadowmen = $(XMapWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XMapWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XMapWindow.$(LIB_MAN_SUFFIX)" > $@ + +XNextEvent_shadowmen = $(XNextEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XNextEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XNextEvent.$(LIB_MAN_SUFFIX)" > $@ + +XOpenDisplay_shadowmen = $(XOpenDisplay_shadows:=.@LIB_MAN_SUFFIX@) +$(XOpenDisplay_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenDisplay.$(LIB_MAN_SUFFIX)" > $@ + +XOpenIM_shadowmen = $(XOpenIM_shadows:=.@LIB_MAN_SUFFIX@) +$(XOpenIM_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenIM.$(LIB_MAN_SUFFIX)" > $@ + +XOpenOM_shadowmen = $(XOpenOM_shadows:=.@LIB_MAN_SUFFIX@) +$(XOpenOM_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenOM.$(LIB_MAN_SUFFIX)" > $@ + +XParseGeometry_shadowmen = $(XParseGeometry_shadows:=.@LIB_MAN_SUFFIX@) +$(XParseGeometry_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XParseGeometry.$(LIB_MAN_SUFFIX)" > $@ + +XPolygonRegion_shadowmen = $(XPolygonRegion_shadows:=.@LIB_MAN_SUFFIX@) +$(XPolygonRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XPolygonRegion.$(LIB_MAN_SUFFIX)" > $@ + +XPutImage_shadowmen = $(XPutImage_shadows:=.@LIB_MAN_SUFFIX@) +$(XPutImage_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XPutImage.$(LIB_MAN_SUFFIX)" > $@ + +XrmPutResource_shadowmen = $(XrmPutResource_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmPutResource_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmPutResource.$(LIB_MAN_SUFFIX)" > $@ + +XQueryBestSize_shadowmen = $(XQueryBestSize_shadows:=.@LIB_MAN_SUFFIX@) +$(XQueryBestSize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryBestSize.$(LIB_MAN_SUFFIX)" > $@ + +XQueryColor_shadowmen = $(XQueryColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XQueryColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryColor.$(LIB_MAN_SUFFIX)" > $@ + +XQueryExtension_shadowmen = $(XQueryExtension_shadows:=.@LIB_MAN_SUFFIX@) +$(XQueryExtension_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryExtension.$(LIB_MAN_SUFFIX)" > $@ + +XResourceManagerString_shadowmen = $(XResourceManagerString_shadows:=.@LIB_MAN_SUFFIX@) +$(XResourceManagerString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XResourceManagerString.$(LIB_MAN_SUFFIX)" > $@ + +XRaiseWindow_shadowmen = $(XRaiseWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XRaiseWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XRaiseWindow.$(LIB_MAN_SUFFIX)" > $@ + +XReadBitmapFile_shadowmen = $(XReadBitmapFile_shadows:=.@LIB_MAN_SUFFIX@) +$(XReadBitmapFile_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XReadBitmapFile.$(LIB_MAN_SUFFIX)" > $@ + +XRecolorCursor_shadowmen = $(XRecolorCursor_shadows:=.@LIB_MAN_SUFFIX@) +$(XRecolorCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XRecolorCursor.$(LIB_MAN_SUFFIX)" > $@ + +XSaveContext_shadowmen = $(XSaveContext_shadows:=.@LIB_MAN_SUFFIX@) +$(XSaveContext_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSaveContext.$(LIB_MAN_SUFFIX)" > $@ + +XSetICFocus_shadowmen = $(XSetICFocus_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetICFocus_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetICFocus.$(LIB_MAN_SUFFIX)" > $@ + +XSetICValues_shadowmen = $(XSetICValues_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetICValues_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetICValues.$(LIB_MAN_SUFFIX)" > $@ + +XStringListToTextProperty_shadowmen = $(XStringListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +$(XStringListToTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStringListToTextProperty.$(LIB_MAN_SUFFIX)" > $@ + +XSetArcMode_shadowmen = $(XSetArcMode_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetArcMode_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetArcMode.$(LIB_MAN_SUFFIX)" > $@ + +XSetClipOrigin_shadowmen = $(XSetClipOrigin_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetClipOrigin_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetClipOrigin.$(LIB_MAN_SUFFIX)" > $@ + +XSetCloseDownMode_shadowmen = $(XSetCloseDownMode_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetCloseDownMode_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetCloseDownMode.$(LIB_MAN_SUFFIX)" > $@ + +XSetCommand_shadowmen = $(XSetCommand_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetCommand_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetCommand.$(LIB_MAN_SUFFIX)" > $@ + +XSetErrorHandler_shadowmen = $(XSetErrorHandler_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetErrorHandler_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetErrorHandler.$(LIB_MAN_SUFFIX)" > $@ + +XSendEvent_shadowmen = $(XSendEvent_shadows:=.@LIB_MAN_SUFFIX@) +$(XSendEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSendEvent.$(LIB_MAN_SUFFIX)" > $@ + +XSetFillStyle_shadowmen = $(XSetFillStyle_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetFillStyle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetFillStyle.$(LIB_MAN_SUFFIX)" > $@ + +XSetFontPath_shadowmen = $(XSetFontPath_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetFontPath_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetFontPath.$(LIB_MAN_SUFFIX)" > $@ + +XSetInputFocus_shadowmen = $(XSetInputFocus_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetInputFocus_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetInputFocus.$(LIB_MAN_SUFFIX)" > $@ + +XSetLineAttributes_shadowmen = $(XSetLineAttributes_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetLineAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetLineAttributes.$(LIB_MAN_SUFFIX)" > $@ + +XSetPointerMapping_shadowmen = $(XSetPointerMapping_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetPointerMapping_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetPointerMapping.$(LIB_MAN_SUFFIX)" > $@ + +XSetScreenSaver_shadowmen = $(XSetScreenSaver_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetScreenSaver_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetScreenSaver.$(LIB_MAN_SUFFIX)" > $@ + +XSetSelectionOwner_shadowmen = $(XSetSelectionOwner_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetSelectionOwner_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetSelectionOwner.$(LIB_MAN_SUFFIX)" > $@ + +XSetState_shadowmen = $(XSetState_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetState_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetState.$(LIB_MAN_SUFFIX)" > $@ + +XSetTransientForHint_shadowmen = $(XSetTransientForHint_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetTransientForHint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTransientForHint.$(LIB_MAN_SUFFIX)" > $@ + +XSetTextProperty_shadowmen = $(XSetTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTextProperty.$(LIB_MAN_SUFFIX)" > $@ + +XSetTile_shadowmen = $(XSetTile_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetTile_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTile.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMClientMachine_shadowmen = $(XSetWMClientMachine_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMClientMachine_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMClientMachine.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMColormapWindows_shadowmen = $(XSetWMColormapWindows_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMColormapWindows_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMColormapWindows.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMIconName_shadowmen = $(XSetWMIconName_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMIconName_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMIconName.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMName_shadowmen = $(XSetWMName_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMName_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMName.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMProperties_shadowmen = $(XSetWMProperties_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMProperties_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProperties.$(LIB_MAN_SUFFIX)" > $@ + +XSetWMProtocols_shadowmen = $(XSetWMProtocols_shadows:=.@LIB_MAN_SUFFIX@) +$(XSetWMProtocols_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProtocols.$(LIB_MAN_SUFFIX)" > $@ + +XStoreBytes_shadowmen = $(XStoreBytes_shadows:=.@LIB_MAN_SUFFIX@) +$(XStoreBytes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStoreBytes.$(LIB_MAN_SUFFIX)" > $@ + +XStoreColors_shadowmen = $(XStoreColors_shadows:=.@LIB_MAN_SUFFIX@) +$(XStoreColors_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStoreColors.$(LIB_MAN_SUFFIX)" > $@ + +XStringToKeysym_shadowmen = $(XStringToKeysym_shadows:=.@LIB_MAN_SUFFIX@) +$(XStringToKeysym_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStringToKeysym.$(LIB_MAN_SUFFIX)" > $@ + +XSupportsLocale_shadowmen = $(XSupportsLocale_shadows:=.@LIB_MAN_SUFFIX@) +$(XSupportsLocale_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSupportsLocale.$(LIB_MAN_SUFFIX)" > $@ + +XSynchronize_shadowmen = $(XSynchronize_shadows:=.@LIB_MAN_SUFFIX@) +$(XSynchronize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSynchronize.$(LIB_MAN_SUFFIX)" > $@ + +XmbTextListToTextProperty_shadowmen = $(XmbTextListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbTextListToTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextListToTextProperty.$(LIB_MAN_SUFFIX)" > $@ + +XTextExtents_shadowmen = $(XTextExtents_shadows:=.@LIB_MAN_SUFFIX@) +$(XTextExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XTextExtents.$(LIB_MAN_SUFFIX)" > $@ + +XTextWidth_shadowmen = $(XTextWidth_shadows:=.@LIB_MAN_SUFFIX@) +$(XTextWidth_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XTextWidth.$(LIB_MAN_SUFFIX)" > $@ + +XInitThreads_shadowmen = $(XInitThreads_shadows:=.@LIB_MAN_SUFFIX@) +$(XInitThreads_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInitThreads.$(LIB_MAN_SUFFIX)" > $@ + +XrmUniqueQuark_shadowmen = $(XrmUniqueQuark_shadows:=.@LIB_MAN_SUFFIX@) +$(XrmUniqueQuark_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmUniqueQuark.$(LIB_MAN_SUFFIX)" > $@ + +XUnmapWindow_shadowmen = $(XUnmapWindow_shadows:=.@LIB_MAN_SUFFIX@) +$(XUnmapWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XUnmapWindow.$(LIB_MAN_SUFFIX)" > $@ + +XcmsCCCOfColormap_shadowmen = $(XcmsCCCOfColormap_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsCCCOfColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCCCOfColormap.$(LIB_MAN_SUFFIX)" > $@ + +XcmsAllocColor_shadowmen = $(XcmsAllocColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsAllocColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsAllocColor.$(LIB_MAN_SUFFIX)" > $@ + +XcmsColor_shadowmen = $(XcmsColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsColor.$(LIB_MAN_SUFFIX)" > $@ + +XcmsCreateCCC_shadowmen = $(XcmsCreateCCC_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsCreateCCC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCreateCCC.$(LIB_MAN_SUFFIX)" > $@ + +XcmsCIELabQueryMaxC_shadowmen = $(XcmsCIELabQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsCIELabQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELabQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ + +XcmsCIELuvQueryMaxC_shadowmen = $(XcmsCIELuvQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsCIELuvQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELuvQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ + +XcmsQueryBlack_shadowmen = $(XcmsQueryBlack_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsQueryBlack_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryBlack.$(LIB_MAN_SUFFIX)" > $@ + +XcmsQueryColor_shadowmen = $(XcmsQueryColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsQueryColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryColor.$(LIB_MAN_SUFFIX)" > $@ + +XcmsStoreColor_shadowmen = $(XcmsStoreColor_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsStoreColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsStoreColor.$(LIB_MAN_SUFFIX)" > $@ + +XcmsSetWhitePoint_shadowmen = $(XcmsSetWhitePoint_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsSetWhitePoint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsSetWhitePoint.$(LIB_MAN_SUFFIX)" > $@ + +XcmsTekHVCQueryMaxC_shadowmen = $(XcmsTekHVCQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +$(XcmsTekHVCQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsTekHVCQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ + +XmbDrawImageString_shadowmen = $(XmbDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbDrawImageString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawImageString.$(LIB_MAN_SUFFIX)" > $@ + +XmbDrawString_shadowmen = $(XmbDrawString_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbDrawString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawString.$(LIB_MAN_SUFFIX)" > $@ + +XmbDrawText_shadowmen = $(XmbDrawText_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbDrawText_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawText.$(LIB_MAN_SUFFIX)" > $@ + +XmbLookupString_shadowmen = $(XmbLookupString_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbLookupString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbLookupString.$(LIB_MAN_SUFFIX)" > $@ + +XmbResetIC_shadowmen = $(XmbResetIC_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbResetIC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbResetIC.$(LIB_MAN_SUFFIX)" > $@ + +XmbTextEscapement_shadowmen = $(XmbTextEscapement_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbTextEscapement_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextEscapement.$(LIB_MAN_SUFFIX)" > $@ + +XmbTextExtents_shadowmen = $(XmbTextExtents_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbTextExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextExtents.$(LIB_MAN_SUFFIX)" > $@ + +XmbTextPerCharExtents_shadowmen = $(XmbTextPerCharExtents_shadows:=.@LIB_MAN_SUFFIX@) +$(XmbTextPerCharExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextPerCharExtents.$(LIB_MAN_SUFFIX)" > $@ diff --git a/libX11/man/Makefile.in b/libX11/man/Makefile.in index 64f44af7f..a4726568d 100644 --- a/libX11/man/Makefile.in +++ b/libX11/man/Makefile.in @@ -54,6 +54,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -124,6 +130,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -200,6 +207,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -482,7 +490,6 @@ libman_PRE = \ @MANPAGES_TRUE@libman_DATA = $(libman_PRE:man=@LIB_MAN_SUFFIX@) \ @MANPAGES_TRUE@ $(all_shadows:=.@LIB_MAN_SUFFIX@) -@MANPAGES_TRUE@BUILT_SOURCES = shadows.DONE EXTRA_DIST = $(libman_PRE) CLEANFILES = $(libman_DATA) SUFFIXES = .pre .$(LIB_MAN_SUFFIX) .man @@ -503,6 +510,11 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; XORGRELSTRING = @PACKAGE_STRING@ XORGMANNAME = X Version 11 MANDEFS = -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ @@ -1370,8 +1382,149 @@ XmbTextPerCharExtents_shadows = \ XwcTextPerCharExtents \ Xutf8TextPerCharExtents -all: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) all-recursive +AllPlanes_shadowmen = $(AllPlanes_shadows:=.@LIB_MAN_SUFFIX@) +BlackPixelOfScreen_shadowmen = $(BlackPixelOfScreen_shadows:=.@LIB_MAN_SUFFIX@) +DisplayOfCCC_shadowmen = $(DisplayOfCCC_shadows:=.@LIB_MAN_SUFFIX@) +ImageByteOrder_shadowmen = $(ImageByteOrder_shadows:=.@LIB_MAN_SUFFIX@) +IsCursorKey_shadowmen = $(IsCursorKey_shadows:=.@LIB_MAN_SUFFIX@) +XAllocClassHint_shadowmen = $(XAllocClassHint_shadows:=.@LIB_MAN_SUFFIX@) +XAllocIconSize_shadowmen = $(XAllocIconSize_shadows:=.@LIB_MAN_SUFFIX@) +XAllocStandardColormap_shadowmen = $(XAllocStandardColormap_shadows:=.@LIB_MAN_SUFFIX@) +XAllocSizeHints_shadowmen = $(XAllocSizeHints_shadows:=.@LIB_MAN_SUFFIX@) +XAllocWMHints_shadowmen = $(XAllocWMHints_shadows:=.@LIB_MAN_SUFFIX@) +XAddHost_shadowmen = $(XAddHost_shadows:=.@LIB_MAN_SUFFIX@) +XAllocColor_shadowmen = $(XAllocColor_shadows:=.@LIB_MAN_SUFFIX@) +XAnyEvent_shadowmen = $(XAnyEvent_shadows:=.@LIB_MAN_SUFFIX@) +XButtonEvent_shadowmen = $(XButtonEvent_shadows:=.@LIB_MAN_SUFFIX@) +XChangeKeyboardControl_shadowmen = $(XChangeKeyboardControl_shadows:=.@LIB_MAN_SUFFIX@) +XChangeKeyboardMapping_shadowmen = $(XChangeKeyboardMapping_shadows:=.@LIB_MAN_SUFFIX@) +XChangePointerControl_shadowmen = $(XChangePointerControl_shadows:=.@LIB_MAN_SUFFIX@) +XChangeSaveSet_shadowmen = $(XChangeSaveSet_shadows:=.@LIB_MAN_SUFFIX@) +XChangeWindowAttributes_shadowmen = $(XChangeWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) +XClearArea_shadowmen = $(XClearArea_shadows:=.@LIB_MAN_SUFFIX@) +XConfigureWindow_shadowmen = $(XConfigureWindow_shadows:=.@LIB_MAN_SUFFIX@) +XCopyArea_shadowmen = $(XCopyArea_shadows:=.@LIB_MAN_SUFFIX@) +XCreateColormap_shadowmen = $(XCreateColormap_shadows:=.@LIB_MAN_SUFFIX@) +XCreateFontCursor_shadowmen = $(XCreateFontCursor_shadows:=.@LIB_MAN_SUFFIX@) +XCreateFontSet_shadowmen = $(XCreateFontSet_shadows:=.@LIB_MAN_SUFFIX@) +XCreateGC_shadowmen = $(XCreateGC_shadows:=.@LIB_MAN_SUFFIX@) +XCreateIC_shadowmen = $(XCreateIC_shadows:=.@LIB_MAN_SUFFIX@) +XInitImage_shadowmen = $(XInitImage_shadows:=.@LIB_MAN_SUFFIX@) +XCreateOC_shadowmen = $(XCreateOC_shadows:=.@LIB_MAN_SUFFIX@) +XCreatePixmap_shadowmen = $(XCreatePixmap_shadows:=.@LIB_MAN_SUFFIX@) +XCreateRegion_shadowmen = $(XCreateRegion_shadows:=.@LIB_MAN_SUFFIX@) +XCreateWindow_shadowmen = $(XCreateWindow_shadows:=.@LIB_MAN_SUFFIX@) +XDefineCursor_shadowmen = $(XDefineCursor_shadows:=.@LIB_MAN_SUFFIX@) +XDestroyWindow_shadowmen = $(XDestroyWindow_shadows:=.@LIB_MAN_SUFFIX@) +XDrawArc_shadowmen = $(XDrawArc_shadows:=.@LIB_MAN_SUFFIX@) +XDrawImageString_shadowmen = $(XDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) +XDrawLine_shadowmen = $(XDrawLine_shadows:=.@LIB_MAN_SUFFIX@) +XDrawPoint_shadowmen = $(XDrawPoint_shadows:=.@LIB_MAN_SUFFIX@) +XDrawRectangle_shadowmen = $(XDrawRectangle_shadows:=.@LIB_MAN_SUFFIX@) +XDrawString_shadowmen = $(XDrawString_shadows:=.@LIB_MAN_SUFFIX@) +XDrawText_shadowmen = $(XDrawText_shadows:=.@LIB_MAN_SUFFIX@) +XEmptyRegion_shadowmen = $(XEmptyRegion_shadows:=.@LIB_MAN_SUFFIX@) +XFillRectangle_shadowmen = $(XFillRectangle_shadows:=.@LIB_MAN_SUFFIX@) +XFlush_shadowmen = $(XFlush_shadows:=.@LIB_MAN_SUFFIX@) +XFontsOfFontSet_shadowmen = $(XFontsOfFontSet_shadows:=.@LIB_MAN_SUFFIX@) +XGraphicsExposeEvent_shadowmen = $(XGraphicsExposeEvent_shadows:=.@LIB_MAN_SUFFIX@) +XrmGetFileDatabase_shadowmen = $(XrmGetFileDatabase_shadows:=.@LIB_MAN_SUFFIX@) +XrmGetResource_shadowmen = $(XrmGetResource_shadows:=.@LIB_MAN_SUFFIX@) +XGetEventData_shadowmen = $(XGetEventData_shadows:=.@LIB_MAN_SUFFIX@) +XGetVisualInfo_shadowmen = $(XGetVisualInfo_shadows:=.@LIB_MAN_SUFFIX@) +XGetWindowAttributes_shadowmen = $(XGetWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) +XGetWindowProperty_shadowmen = $(XGetWindowProperty_shadows:=.@LIB_MAN_SUFFIX@) +XGrabButton_shadowmen = $(XGrabButton_shadows:=.@LIB_MAN_SUFFIX@) +XGrabKey_shadowmen = $(XGrabKey_shadows:=.@LIB_MAN_SUFFIX@) +XGrabKeyboard_shadowmen = $(XGrabKeyboard_shadows:=.@LIB_MAN_SUFFIX@) +XGrabPointer_shadowmen = $(XGrabPointer_shadows:=.@LIB_MAN_SUFFIX@) +XGrabServer_shadowmen = $(XGrabServer_shadows:=.@LIB_MAN_SUFFIX@) +XIconifyWindow_shadowmen = $(XIconifyWindow_shadows:=.@LIB_MAN_SUFFIX@) +XIfEvent_shadowmen = $(XIfEvent_shadows:=.@LIB_MAN_SUFFIX@) +XrmInitialize_shadowmen = $(XrmInitialize_shadows:=.@LIB_MAN_SUFFIX@) +XInstallColormap_shadowmen = $(XInstallColormap_shadows:=.@LIB_MAN_SUFFIX@) +XAddConnectionWatch_shadowmen = $(XAddConnectionWatch_shadows:=.@LIB_MAN_SUFFIX@) +XIntersectRegion_shadowmen = $(XIntersectRegion_shadows:=.@LIB_MAN_SUFFIX@) +XInternAtom_shadowmen = $(XInternAtom_shadows:=.@LIB_MAN_SUFFIX@) +XListFonts_shadowmen = $(XListFonts_shadows:=.@LIB_MAN_SUFFIX@) +XLoadFont_shadowmen = $(XLoadFont_shadows:=.@LIB_MAN_SUFFIX@) +XLookupKeysym_shadowmen = $(XLookupKeysym_shadows:=.@LIB_MAN_SUFFIX@) +XrmMergeDatabases_shadowmen = $(XrmMergeDatabases_shadows:=.@LIB_MAN_SUFFIX@) +XMapEvent_shadowmen = $(XMapEvent_shadows:=.@LIB_MAN_SUFFIX@) +XMapWindow_shadowmen = $(XMapWindow_shadows:=.@LIB_MAN_SUFFIX@) +XNextEvent_shadowmen = $(XNextEvent_shadows:=.@LIB_MAN_SUFFIX@) +XOpenDisplay_shadowmen = $(XOpenDisplay_shadows:=.@LIB_MAN_SUFFIX@) +XOpenIM_shadowmen = $(XOpenIM_shadows:=.@LIB_MAN_SUFFIX@) +XOpenOM_shadowmen = $(XOpenOM_shadows:=.@LIB_MAN_SUFFIX@) +XParseGeometry_shadowmen = $(XParseGeometry_shadows:=.@LIB_MAN_SUFFIX@) +XPolygonRegion_shadowmen = $(XPolygonRegion_shadows:=.@LIB_MAN_SUFFIX@) +XPutImage_shadowmen = $(XPutImage_shadows:=.@LIB_MAN_SUFFIX@) +XrmPutResource_shadowmen = $(XrmPutResource_shadows:=.@LIB_MAN_SUFFIX@) +XQueryBestSize_shadowmen = $(XQueryBestSize_shadows:=.@LIB_MAN_SUFFIX@) +XQueryColor_shadowmen = $(XQueryColor_shadows:=.@LIB_MAN_SUFFIX@) +XQueryExtension_shadowmen = $(XQueryExtension_shadows:=.@LIB_MAN_SUFFIX@) +XResourceManagerString_shadowmen = $(XResourceManagerString_shadows:=.@LIB_MAN_SUFFIX@) +XRaiseWindow_shadowmen = $(XRaiseWindow_shadows:=.@LIB_MAN_SUFFIX@) +XReadBitmapFile_shadowmen = $(XReadBitmapFile_shadows:=.@LIB_MAN_SUFFIX@) +XRecolorCursor_shadowmen = $(XRecolorCursor_shadows:=.@LIB_MAN_SUFFIX@) +XSaveContext_shadowmen = $(XSaveContext_shadows:=.@LIB_MAN_SUFFIX@) +XSetICFocus_shadowmen = $(XSetICFocus_shadows:=.@LIB_MAN_SUFFIX@) +XSetICValues_shadowmen = $(XSetICValues_shadows:=.@LIB_MAN_SUFFIX@) +XStringListToTextProperty_shadowmen = $(XStringListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +XSetArcMode_shadowmen = $(XSetArcMode_shadows:=.@LIB_MAN_SUFFIX@) +XSetClipOrigin_shadowmen = $(XSetClipOrigin_shadows:=.@LIB_MAN_SUFFIX@) +XSetCloseDownMode_shadowmen = $(XSetCloseDownMode_shadows:=.@LIB_MAN_SUFFIX@) +XSetCommand_shadowmen = $(XSetCommand_shadows:=.@LIB_MAN_SUFFIX@) +XSetErrorHandler_shadowmen = $(XSetErrorHandler_shadows:=.@LIB_MAN_SUFFIX@) +XSendEvent_shadowmen = $(XSendEvent_shadows:=.@LIB_MAN_SUFFIX@) +XSetFillStyle_shadowmen = $(XSetFillStyle_shadows:=.@LIB_MAN_SUFFIX@) +XSetFontPath_shadowmen = $(XSetFontPath_shadows:=.@LIB_MAN_SUFFIX@) +XSetInputFocus_shadowmen = $(XSetInputFocus_shadows:=.@LIB_MAN_SUFFIX@) +XSetLineAttributes_shadowmen = $(XSetLineAttributes_shadows:=.@LIB_MAN_SUFFIX@) +XSetPointerMapping_shadowmen = $(XSetPointerMapping_shadows:=.@LIB_MAN_SUFFIX@) +XSetScreenSaver_shadowmen = $(XSetScreenSaver_shadows:=.@LIB_MAN_SUFFIX@) +XSetSelectionOwner_shadowmen = $(XSetSelectionOwner_shadows:=.@LIB_MAN_SUFFIX@) +XSetState_shadowmen = $(XSetState_shadows:=.@LIB_MAN_SUFFIX@) +XSetTransientForHint_shadowmen = $(XSetTransientForHint_shadows:=.@LIB_MAN_SUFFIX@) +XSetTextProperty_shadowmen = $(XSetTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +XSetTile_shadowmen = $(XSetTile_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMClientMachine_shadowmen = $(XSetWMClientMachine_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMColormapWindows_shadowmen = $(XSetWMColormapWindows_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMIconName_shadowmen = $(XSetWMIconName_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMName_shadowmen = $(XSetWMName_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMProperties_shadowmen = $(XSetWMProperties_shadows:=.@LIB_MAN_SUFFIX@) +XSetWMProtocols_shadowmen = $(XSetWMProtocols_shadows:=.@LIB_MAN_SUFFIX@) +XStoreBytes_shadowmen = $(XStoreBytes_shadows:=.@LIB_MAN_SUFFIX@) +XStoreColors_shadowmen = $(XStoreColors_shadows:=.@LIB_MAN_SUFFIX@) +XStringToKeysym_shadowmen = $(XStringToKeysym_shadows:=.@LIB_MAN_SUFFIX@) +XSupportsLocale_shadowmen = $(XSupportsLocale_shadows:=.@LIB_MAN_SUFFIX@) +XSynchronize_shadowmen = $(XSynchronize_shadows:=.@LIB_MAN_SUFFIX@) +XmbTextListToTextProperty_shadowmen = $(XmbTextListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) +XTextExtents_shadowmen = $(XTextExtents_shadows:=.@LIB_MAN_SUFFIX@) +XTextWidth_shadowmen = $(XTextWidth_shadows:=.@LIB_MAN_SUFFIX@) +XInitThreads_shadowmen = $(XInitThreads_shadows:=.@LIB_MAN_SUFFIX@) +XrmUniqueQuark_shadowmen = $(XrmUniqueQuark_shadows:=.@LIB_MAN_SUFFIX@) +XUnmapWindow_shadowmen = $(XUnmapWindow_shadows:=.@LIB_MAN_SUFFIX@) +XcmsCCCOfColormap_shadowmen = $(XcmsCCCOfColormap_shadows:=.@LIB_MAN_SUFFIX@) +XcmsAllocColor_shadowmen = $(XcmsAllocColor_shadows:=.@LIB_MAN_SUFFIX@) +XcmsColor_shadowmen = $(XcmsColor_shadows:=.@LIB_MAN_SUFFIX@) +XcmsCreateCCC_shadowmen = $(XcmsCreateCCC_shadows:=.@LIB_MAN_SUFFIX@) +XcmsCIELabQueryMaxC_shadowmen = $(XcmsCIELabQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +XcmsCIELuvQueryMaxC_shadowmen = $(XcmsCIELuvQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +XcmsQueryBlack_shadowmen = $(XcmsQueryBlack_shadows:=.@LIB_MAN_SUFFIX@) +XcmsQueryColor_shadowmen = $(XcmsQueryColor_shadows:=.@LIB_MAN_SUFFIX@) +XcmsStoreColor_shadowmen = $(XcmsStoreColor_shadows:=.@LIB_MAN_SUFFIX@) +XcmsSetWhitePoint_shadowmen = $(XcmsSetWhitePoint_shadows:=.@LIB_MAN_SUFFIX@) +XcmsTekHVCQueryMaxC_shadowmen = $(XcmsTekHVCQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) +XmbDrawImageString_shadowmen = $(XmbDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) +XmbDrawString_shadowmen = $(XmbDrawString_shadows:=.@LIB_MAN_SUFFIX@) +XmbDrawText_shadowmen = $(XmbDrawText_shadows:=.@LIB_MAN_SUFFIX@) +XmbLookupString_shadowmen = $(XmbLookupString_shadows:=.@LIB_MAN_SUFFIX@) +XmbResetIC_shadowmen = $(XmbResetIC_shadows:=.@LIB_MAN_SUFFIX@) +XmbTextEscapement_shadowmen = $(XmbTextEscapement_shadows:=.@LIB_MAN_SUFFIX@) +XmbTextExtents_shadowmen = $(XmbTextExtents_shadows:=.@LIB_MAN_SUFFIX@) +XmbTextPerCharExtents_shadowmen = $(XmbTextPerCharExtents_shadows:=.@LIB_MAN_SUFFIX@) +all: all-recursive .SUFFIXES: .SUFFIXES: .pre .$(LIB_MAN_SUFFIX) .man @@ -1626,16 +1779,14 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am -check: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) check-recursive +check: check-recursive all-am: Makefile $(DATA) installdirs: installdirs-recursive installdirs-am: for dir in "$(DESTDIR)$(libmandir)"; do \ test -z "$$dir" || $(MKDIR_P) "$$dir"; \ done -install: $(BUILT_SOURCES) - $(MAKE) $(AM_MAKEFLAGS) install-recursive +install: install-recursive install-exec: install-exec-recursive install-data: install-data-recursive uninstall: uninstall-recursive @@ -1661,7 +1812,6 @@ distclean-generic: maintainer-clean-generic: @echo "This command is intended for maintainers to use" @echo "it deletes files that may require special tools to rebuild." - -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES) clean: clean-recursive clean-am: clean-generic clean-libtool mostlyclean-am @@ -1728,9 +1878,8 @@ ps-am: uninstall-am: uninstall-libmanDATA -.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) all check \ - ctags-recursive install install-am install-strip \ - tags-recursive +.MAKE: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) ctags-recursive \ + install-am install-strip tags-recursive .PHONY: $(RECURSIVE_CLEAN_TARGETS) $(RECURSIVE_TARGETS) CTAGS GTAGS \ all all-am check check-am clean clean-generic clean-libtool \ @@ -1749,439 +1898,294 @@ uninstall-am: uninstall-libmanDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ .man.$(LIB_MAN_SUFFIX): - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ - -shadows.DONE: - -rm -f $(all_aliases:=.@LIB_MAN_SUFFIX@) - (for i in $(AllPlanes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/AllPlanes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(BlackPixelOfScreen_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/BlackPixelOfScreen.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(DisplayOfCCC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/DisplayOfCCC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(ImageByteOrder_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/ImageByteOrder.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(IsCursorKey_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/IsCursorKey.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocClassHint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocClassHint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocIconSize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocIconSize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocStandardColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocStandardColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocSizeHints_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocSizeHints.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocWMHints_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocWMHints.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAddHost_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAddHost.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAllocColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAllocColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAnyEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAnyEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XButtonEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XButtonEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeKeyboardControl_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardControl.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeKeyboardMapping_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardMapping.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangePointerControl_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangePointerControl.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeSaveSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeSaveSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XChangeWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XChangeWindowAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XClearArea_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XClearArea.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XConfigureWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XConfigureWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCopyArea_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCopyArea.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateFontCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateFontSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateGC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateGC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateIC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateIC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInitImage_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInitImage.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateOC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateOC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreatePixmap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreatePixmap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XCreateWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XCreateWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDefineCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDefineCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDestroyWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDestroyWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawArc_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawArc.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawImageString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawLine_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawLine.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawPoint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawPoint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawRectangle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawRectangle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XDrawText_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XDrawText.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XEmptyRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XEmptyRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFillRectangle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFillRectangle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFlush_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFlush.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XFontsOfFontSet_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XFontsOfFontSet.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGraphicsExposeEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGraphicsExposeEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmGetFileDatabase_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmGetFileDatabase.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmGetResource_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmGetResource.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetEventData_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetEventData.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetVisualInfo_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetVisualInfo.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetWindowAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGetWindowProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabButton_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabButton.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabKey_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabKey.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabKeyboard_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabKeyboard.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabPointer_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabPointer.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XGrabServer_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XGrabServer.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIconifyWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIconifyWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIfEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIfEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmInitialize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmInitialize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInstallColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInstallColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XAddConnectionWatch_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XAddConnectionWatch.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XIntersectRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XIntersectRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInternAtom_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInternAtom.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XListFonts_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XListFonts.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XLoadFont_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XLoadFont.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XLookupKeysym_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XLookupKeysym.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmMergeDatabases_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmMergeDatabases.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XMapEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XMapEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XMapWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XMapWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XNextEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XNextEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenDisplay_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenDisplay.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenIM_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenIM.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XOpenOM_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XOpenOM.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XParseGeometry_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XParseGeometry.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XPolygonRegion_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XPolygonRegion.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XPutImage_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XPutImage.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmPutResource_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmPutResource.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryBestSize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryBestSize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XQueryExtension_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XQueryExtension.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XResourceManagerString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XResourceManagerString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XRaiseWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XRaiseWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XReadBitmapFile_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XReadBitmapFile.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XRecolorCursor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XRecolorCursor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSaveContext_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSaveContext.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetICFocus_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetICFocus.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetICValues_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetICValues.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStringListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStringListToTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetArcMode_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetArcMode.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetClipOrigin_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetClipOrigin.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetCloseDownMode_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetCloseDownMode.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetCommand_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetCommand.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetErrorHandler_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetErrorHandler.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSendEvent_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSendEvent.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetFillStyle_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetFillStyle.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetFontPath_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetFontPath.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetInputFocus_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetInputFocus.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetLineAttributes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetLineAttributes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetPointerMapping_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetPointerMapping.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetScreenSaver_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetScreenSaver.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetSelectionOwner_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetSelectionOwner.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetState_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetState.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTransientForHint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTransientForHint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetTile_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetTile.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMClientMachine_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMClientMachine.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMColormapWindows_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMColormapWindows.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMIconName_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMIconName.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMName_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMName.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMProperties_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProperties.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSetWMProtocols_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProtocols.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStoreBytes_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStoreBytes.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStoreColors_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStoreColors.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XStringToKeysym_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XStringToKeysym.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSupportsLocale_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSupportsLocale.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XSynchronize_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XSynchronize.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextListToTextProperty_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextListToTextProperty.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XTextExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XTextExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XTextWidth_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XTextWidth.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XInitThreads_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XInitThreads.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XrmUniqueQuark_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XrmUniqueQuark.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XUnmapWindow_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XUnmapWindow.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCCCOfColormap_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCCCOfColormap.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsAllocColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsAllocColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCreateCCC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCreateCCC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCIELabQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELabQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsCIELuvQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELuvQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsQueryBlack_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryBlack.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsQueryColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsStoreColor_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsStoreColor.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsSetWhitePoint_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsSetWhitePoint.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XcmsTekHVCQueryMaxC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XcmsTekHVCQueryMaxC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawImageString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawImageString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbDrawText_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawText.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbLookupString_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbLookupString.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbResetIC_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbResetIC.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextEscapement_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextEscapement.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) - (for i in $(XmbTextPerCharExtents_shadows:=.@LIB_MAN_SUFFIX@) ; do \ - echo .so man$(LIB_MAN_DIR_SUFFIX)/XmbTextPerCharExtents.$(LIB_MAN_SUFFIX) > $$i; \ - done) + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ +$(AllPlanes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/AllPlanes.$(LIB_MAN_SUFFIX)" > $@ +$(BlackPixelOfScreen_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/BlackPixelOfScreen.$(LIB_MAN_SUFFIX)" > $@ +$(DisplayOfCCC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/DisplayOfCCC.$(LIB_MAN_SUFFIX)" > $@ +$(ImageByteOrder_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/ImageByteOrder.$(LIB_MAN_SUFFIX)" > $@ +$(IsCursorKey_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/IsCursorKey.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocClassHint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocClassHint.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocIconSize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocIconSize.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocStandardColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocStandardColormap.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocSizeHints_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocSizeHints.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocWMHints_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocWMHints.$(LIB_MAN_SUFFIX)" > $@ +$(XAddHost_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAddHost.$(LIB_MAN_SUFFIX)" > $@ +$(XAllocColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAllocColor.$(LIB_MAN_SUFFIX)" > $@ +$(XAnyEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAnyEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XButtonEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XButtonEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XChangeKeyboardControl_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardControl.$(LIB_MAN_SUFFIX)" > $@ +$(XChangeKeyboardMapping_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeKeyboardMapping.$(LIB_MAN_SUFFIX)" > $@ +$(XChangePointerControl_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangePointerControl.$(LIB_MAN_SUFFIX)" > $@ +$(XChangeSaveSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeSaveSet.$(LIB_MAN_SUFFIX)" > $@ +$(XChangeWindowAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XChangeWindowAttributes.$(LIB_MAN_SUFFIX)" > $@ +$(XClearArea_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XClearArea.$(LIB_MAN_SUFFIX)" > $@ +$(XConfigureWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XConfigureWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XCopyArea_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCopyArea.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateColormap.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateFontCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontCursor.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateFontSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateFontSet.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateGC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateGC.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateIC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateIC.$(LIB_MAN_SUFFIX)" > $@ +$(XInitImage_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInitImage.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateOC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateOC.$(LIB_MAN_SUFFIX)" > $@ +$(XCreatePixmap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreatePixmap.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateRegion.$(LIB_MAN_SUFFIX)" > $@ +$(XCreateWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XCreateWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XDefineCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDefineCursor.$(LIB_MAN_SUFFIX)" > $@ +$(XDestroyWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDestroyWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawArc_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawArc.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawImageString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawImageString.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawLine_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawLine.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawPoint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawPoint.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawRectangle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawRectangle.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawString.$(LIB_MAN_SUFFIX)" > $@ +$(XDrawText_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XDrawText.$(LIB_MAN_SUFFIX)" > $@ +$(XEmptyRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XEmptyRegion.$(LIB_MAN_SUFFIX)" > $@ +$(XFillRectangle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFillRectangle.$(LIB_MAN_SUFFIX)" > $@ +$(XFlush_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFlush.$(LIB_MAN_SUFFIX)" > $@ +$(XFontsOfFontSet_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XFontsOfFontSet.$(LIB_MAN_SUFFIX)" > $@ +$(XGraphicsExposeEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGraphicsExposeEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XrmGetFileDatabase_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmGetFileDatabase.$(LIB_MAN_SUFFIX)" > $@ +$(XrmGetResource_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmGetResource.$(LIB_MAN_SUFFIX)" > $@ +$(XGetEventData_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetEventData.$(LIB_MAN_SUFFIX)" > $@ +$(XGetVisualInfo_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetVisualInfo.$(LIB_MAN_SUFFIX)" > $@ +$(XGetWindowAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowAttributes.$(LIB_MAN_SUFFIX)" > $@ +$(XGetWindowProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGetWindowProperty.$(LIB_MAN_SUFFIX)" > $@ +$(XGrabButton_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabButton.$(LIB_MAN_SUFFIX)" > $@ +$(XGrabKey_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabKey.$(LIB_MAN_SUFFIX)" > $@ +$(XGrabKeyboard_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabKeyboard.$(LIB_MAN_SUFFIX)" > $@ +$(XGrabPointer_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabPointer.$(LIB_MAN_SUFFIX)" > $@ +$(XGrabServer_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XGrabServer.$(LIB_MAN_SUFFIX)" > $@ +$(XIconifyWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIconifyWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XIfEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIfEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XrmInitialize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmInitialize.$(LIB_MAN_SUFFIX)" > $@ +$(XInstallColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInstallColormap.$(LIB_MAN_SUFFIX)" > $@ +$(XAddConnectionWatch_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XAddConnectionWatch.$(LIB_MAN_SUFFIX)" > $@ +$(XIntersectRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XIntersectRegion.$(LIB_MAN_SUFFIX)" > $@ +$(XInternAtom_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInternAtom.$(LIB_MAN_SUFFIX)" > $@ +$(XListFonts_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XListFonts.$(LIB_MAN_SUFFIX)" > $@ +$(XLoadFont_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XLoadFont.$(LIB_MAN_SUFFIX)" > $@ +$(XLookupKeysym_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XLookupKeysym.$(LIB_MAN_SUFFIX)" > $@ +$(XrmMergeDatabases_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmMergeDatabases.$(LIB_MAN_SUFFIX)" > $@ +$(XMapEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XMapEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XMapWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XMapWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XNextEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XNextEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XOpenDisplay_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenDisplay.$(LIB_MAN_SUFFIX)" > $@ +$(XOpenIM_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenIM.$(LIB_MAN_SUFFIX)" > $@ +$(XOpenOM_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XOpenOM.$(LIB_MAN_SUFFIX)" > $@ +$(XParseGeometry_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XParseGeometry.$(LIB_MAN_SUFFIX)" > $@ +$(XPolygonRegion_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XPolygonRegion.$(LIB_MAN_SUFFIX)" > $@ +$(XPutImage_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XPutImage.$(LIB_MAN_SUFFIX)" > $@ +$(XrmPutResource_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmPutResource.$(LIB_MAN_SUFFIX)" > $@ +$(XQueryBestSize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryBestSize.$(LIB_MAN_SUFFIX)" > $@ +$(XQueryColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryColor.$(LIB_MAN_SUFFIX)" > $@ +$(XQueryExtension_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XQueryExtension.$(LIB_MAN_SUFFIX)" > $@ +$(XResourceManagerString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XResourceManagerString.$(LIB_MAN_SUFFIX)" > $@ +$(XRaiseWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XRaiseWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XReadBitmapFile_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XReadBitmapFile.$(LIB_MAN_SUFFIX)" > $@ +$(XRecolorCursor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XRecolorCursor.$(LIB_MAN_SUFFIX)" > $@ +$(XSaveContext_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSaveContext.$(LIB_MAN_SUFFIX)" > $@ +$(XSetICFocus_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetICFocus.$(LIB_MAN_SUFFIX)" > $@ +$(XSetICValues_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetICValues.$(LIB_MAN_SUFFIX)" > $@ +$(XStringListToTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStringListToTextProperty.$(LIB_MAN_SUFFIX)" > $@ +$(XSetArcMode_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetArcMode.$(LIB_MAN_SUFFIX)" > $@ +$(XSetClipOrigin_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetClipOrigin.$(LIB_MAN_SUFFIX)" > $@ +$(XSetCloseDownMode_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetCloseDownMode.$(LIB_MAN_SUFFIX)" > $@ +$(XSetCommand_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetCommand.$(LIB_MAN_SUFFIX)" > $@ +$(XSetErrorHandler_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetErrorHandler.$(LIB_MAN_SUFFIX)" > $@ +$(XSendEvent_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSendEvent.$(LIB_MAN_SUFFIX)" > $@ +$(XSetFillStyle_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetFillStyle.$(LIB_MAN_SUFFIX)" > $@ +$(XSetFontPath_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetFontPath.$(LIB_MAN_SUFFIX)" > $@ +$(XSetInputFocus_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetInputFocus.$(LIB_MAN_SUFFIX)" > $@ +$(XSetLineAttributes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetLineAttributes.$(LIB_MAN_SUFFIX)" > $@ +$(XSetPointerMapping_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetPointerMapping.$(LIB_MAN_SUFFIX)" > $@ +$(XSetScreenSaver_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetScreenSaver.$(LIB_MAN_SUFFIX)" > $@ +$(XSetSelectionOwner_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetSelectionOwner.$(LIB_MAN_SUFFIX)" > $@ +$(XSetState_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetState.$(LIB_MAN_SUFFIX)" > $@ +$(XSetTransientForHint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTransientForHint.$(LIB_MAN_SUFFIX)" > $@ +$(XSetTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTextProperty.$(LIB_MAN_SUFFIX)" > $@ +$(XSetTile_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetTile.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMClientMachine_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMClientMachine.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMColormapWindows_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMColormapWindows.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMIconName_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMIconName.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMName_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMName.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMProperties_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProperties.$(LIB_MAN_SUFFIX)" > $@ +$(XSetWMProtocols_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSetWMProtocols.$(LIB_MAN_SUFFIX)" > $@ +$(XStoreBytes_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStoreBytes.$(LIB_MAN_SUFFIX)" > $@ +$(XStoreColors_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStoreColors.$(LIB_MAN_SUFFIX)" > $@ +$(XStringToKeysym_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XStringToKeysym.$(LIB_MAN_SUFFIX)" > $@ +$(XSupportsLocale_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSupportsLocale.$(LIB_MAN_SUFFIX)" > $@ +$(XSynchronize_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XSynchronize.$(LIB_MAN_SUFFIX)" > $@ +$(XmbTextListToTextProperty_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextListToTextProperty.$(LIB_MAN_SUFFIX)" > $@ +$(XTextExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XTextExtents.$(LIB_MAN_SUFFIX)" > $@ +$(XTextWidth_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XTextWidth.$(LIB_MAN_SUFFIX)" > $@ +$(XInitThreads_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XInitThreads.$(LIB_MAN_SUFFIX)" > $@ +$(XrmUniqueQuark_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XrmUniqueQuark.$(LIB_MAN_SUFFIX)" > $@ +$(XUnmapWindow_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XUnmapWindow.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsCCCOfColormap_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCCCOfColormap.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsAllocColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsAllocColor.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsColor.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsCreateCCC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCreateCCC.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsCIELabQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELabQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsCIELuvQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsCIELuvQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsQueryBlack_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryBlack.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsQueryColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsQueryColor.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsStoreColor_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsStoreColor.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsSetWhitePoint_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsSetWhitePoint.$(LIB_MAN_SUFFIX)" > $@ +$(XcmsTekHVCQueryMaxC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XcmsTekHVCQueryMaxC.$(LIB_MAN_SUFFIX)" > $@ +$(XmbDrawImageString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawImageString.$(LIB_MAN_SUFFIX)" > $@ +$(XmbDrawString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawString.$(LIB_MAN_SUFFIX)" > $@ +$(XmbDrawText_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbDrawText.$(LIB_MAN_SUFFIX)" > $@ +$(XmbLookupString_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbLookupString.$(LIB_MAN_SUFFIX)" > $@ +$(XmbResetIC_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbResetIC.$(LIB_MAN_SUFFIX)" > $@ +$(XmbTextEscapement_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextEscapement.$(LIB_MAN_SUFFIX)" > $@ +$(XmbTextExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextExtents.$(LIB_MAN_SUFFIX)" > $@ +$(XmbTextPerCharExtents_shadowmen): + echo ".so man$(LIB_MAN_DIR_SUFFIX)/XmbTextPerCharExtents.$(LIB_MAN_SUFFIX)" > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/man/XAddHost.man b/libX11/man/XAddHost.man index fe95c7ddc..fd6541dcf 100644 --- a/libX11/man/XAddHost.man +++ b/libX11/man/XAddHost.man @@ -355,6 +355,6 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XFree(3X11) +XFree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocClassHint.man b/libX11/man/XAllocClassHint.man index 5145dd0a9..510c4d4e0 100644 --- a/libX11/man/XAllocClassHint.man +++ b/libX11/man/XAllocClassHint.man @@ -248,19 +248,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocColor.man b/libX11/man/XAllocColor.man index 50c0f3503..5e1231825 100644 --- a/libX11/man/XAllocColor.man +++ b/libX11/man/XAllocColor.man @@ -441,8 +441,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateColormap(3X11), -XQueryColor(3X11), -XStoreColors(3X11) +XCreateColormap(__libmansuffix__), +XQueryColor(__libmansuffix__), +XStoreColors(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocIconSize.man b/libX11/man/XAllocIconSize.man index fb05d5962..11d938f02 100644 --- a/libX11/man/XAllocIconSize.man +++ b/libX11/man/XAllocIconSize.man @@ -244,19 +244,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocSizeHints.man b/libX11/man/XAllocSizeHints.man index 226b9d5f2..3d440d633 100644 --- a/libX11/man/XAllocSizeHints.man +++ b/libX11/man/XAllocSizeHints.man @@ -486,19 +486,19 @@ A value for an Atom argument does not name a defined Atom. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocStandardColormap.man b/libX11/man/XAllocStandardColormap.man index 0baf05ca5..1191f9ea9 100644 --- a/libX11/man/XAllocStandardColormap.man +++ b/libX11/man/XAllocStandardColormap.man @@ -399,9 +399,9 @@ A value for an Atom argument does not name a defined Atom. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocColor(3X11), -XCreateColormap(3X11), -XFree(3X11), -XSetCloseDownMode(3X11) +XAllocColor(__libmansuffix__), +XCreateColormap(__libmansuffix__), +XFree(__libmansuffix__), +XSetCloseDownMode(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAllocWMHints.man b/libX11/man/XAllocWMHints.man index 9afaa7dfc..914431a34 100644 --- a/libX11/man/XAllocWMHints.man +++ b/libX11/man/XAllocWMHints.man @@ -400,19 +400,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XAnyEvent.man b/libX11/man/XAnyEvent.man index 40be01eea..878a24ace 100644 --- a/libX11/man/XAnyEvent.man +++ b/libX11/man/XAnyEvent.man @@ -244,30 +244,30 @@ which is the time at which an event occurred. In addition, a pointer to the generic event must be cast before it is used to access any other information in the structure. .SH "SEE ALSO" -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XButtonEvent.man b/libX11/man/XButtonEvent.man index 7cc3e540e..963c86b3a 100644 --- a/libX11/man/XButtonEvent.man +++ b/libX11/man/XButtonEvent.man @@ -328,30 +328,30 @@ It can be set to or .ZN NotifyHint . .SH "SEE ALSO" -XAnyEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XChangeKeyboardControl.man b/libX11/man/XChangeKeyboardControl.man index dd3225d97..452e530d4 100644 --- a/libX11/man/XChangeKeyboardControl.man +++ b/libX11/man/XChangeKeyboardControl.man @@ -444,7 +444,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XChangeKeyboardMapping(3X11), -XSetPointerMapping(3X11) +XChangeKeyboardMapping(__libmansuffix__), +XSetPointerMapping(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XChangeKeyboardMapping.man b/libX11/man/XChangeKeyboardMapping.man index e157ec926..bcdcb370b 100644 --- a/libX11/man/XChangeKeyboardMapping.man +++ b/libX11/man/XChangeKeyboardMapping.man @@ -443,7 +443,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XFree(3X11), -XSetPointerMapping(3X11) +XFree(__libmansuffix__), +XSetPointerMapping(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XChangeSaveSet.man b/libX11/man/XChangeSaveSet.man index 8ccc6c96a..eb41dffe6 100644 --- a/libX11/man/XChangeSaveSet.man +++ b/libX11/man/XChangeSaveSet.man @@ -223,6 +223,6 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XReparentWindow(3X11) +XReparentWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XChangeWindowAttributes.man b/libX11/man/XChangeWindowAttributes.man index 1de752407..57e2c988f 100644 --- a/libX11/man/XChangeWindowAttributes.man +++ b/libX11/man/XChangeWindowAttributes.man @@ -395,12 +395,12 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XConfigureWindow(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XInstallColormap(3X11), -XMapWindow(3X11), -XRaiseWindow(3X11), -XUnmapWindow(3X11) +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XInstallColormap(__libmansuffix__), +XMapWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCirculateEvent.man b/libX11/man/XCirculateEvent.man index 1ac71f85d..987bde7fa 100644 --- a/libX11/man/XCirculateEvent.man +++ b/libX11/man/XCirculateEvent.man @@ -204,30 +204,30 @@ If it is .ZN PlaceOnBottom , the window is now below all siblings. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCirculateRequestEvent.man b/libX11/man/XCirculateRequestEvent.man index 6c9ac80a4..a8baac0d5 100644 --- a/libX11/man/XCirculateRequestEvent.man +++ b/libX11/man/XCirculateRequestEvent.man @@ -199,30 +199,30 @@ If it is .ZN PlaceOnBottom , the subwindow should be below all siblings. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XClearArea.man b/libX11/man/XClearArea.man index 26f2db242..fc2f1f2f1 100644 --- a/libX11/man/XClearArea.man +++ b/libX11/man/XClearArea.man @@ -253,6 +253,6 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XCopyArea(3X11) +XCopyArea(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XClientMessageEvent.man b/libX11/man/XClientMessageEvent.man index da786af9a..7f953dac2 100644 --- a/libX11/man/XClientMessageEvent.man +++ b/libX11/man/XClientMessageEvent.man @@ -201,31 +201,31 @@ Particular message types might not make use of all these values. The X server places no interpretation on the values in the window, message_type, or data members. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XColormapEvent.man b/libX11/man/XColormapEvent.man index 8920c7fa2..9a794cef0 100644 --- a/libX11/man/XColormapEvent.man +++ b/libX11/man/XColormapEvent.man @@ -212,31 +212,31 @@ uninstalled and can be or .ZN ColormapUninstalled . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCreateColormap(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCreateColormap(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XConfigureEvent.man b/libX11/man/XConfigureEvent.man index 47c8ea4c0..31f0182fe 100644 --- a/libX11/man/XConfigureEvent.man +++ b/libX11/man/XConfigureEvent.man @@ -222,30 +222,30 @@ override_redirect member is .ZN True . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XConfigureRequestEvent.man b/libX11/man/XConfigureRequestEvent.man index 07c6709c9..f46dccb43 100644 --- a/libX11/man/XConfigureRequestEvent.man +++ b/libX11/man/XConfigureRequestEvent.man @@ -205,30 +205,30 @@ and .ZN Above , respectively, if they are not given in the request. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XConfigureWindow.man b/libX11/man/XConfigureWindow.man index 254194276..d3bc1445a 100644 --- a/libX11/man/XConfigureWindow.man +++ b/libX11/man/XConfigureWindow.man @@ -449,11 +449,11 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XMapWindow(3X11), -XRaiseWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XMapWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCopyArea.man b/libX11/man/XCopyArea.man index 61f8ca22e..502ec4f9b 100644 --- a/libX11/man/XCopyArea.man +++ b/libX11/man/XCopyArea.man @@ -303,6 +303,6 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XClearArea(3X11) +XClearArea(__libmansuffix__) .br \fIXlib \- C Language X Interface\fP diff --git a/libX11/man/XCreateColormap.man b/libX11/man/XCreateColormap.man index 6a806dc6a..fae2c4888 100644 --- a/libX11/man/XCreateColormap.man +++ b/libX11/man/XCreateColormap.man @@ -360,10 +360,10 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocColor(3X11), -XChangeWindowAttributes(3X11), -XCreateWindow(3X11), -XQueryColor(3X11), -XStoreColors(3X11) +XAllocColor(__libmansuffix__), +XChangeWindowAttributes(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XQueryColor(__libmansuffix__), +XStoreColors(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateFontCursor.man b/libX11/man/XCreateFontCursor.man index dd0a511a8..6c36dbe6d 100644 --- a/libX11/man/XCreateFontCursor.man +++ b/libX11/man/XCreateFontCursor.man @@ -310,8 +310,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XDefineCursor(3X11), -XLoadFont(3X11), -XRecolorCursor(3X11) +XDefineCursor(__libmansuffix__), +XLoadFont(__libmansuffix__), +XRecolorCursor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateFontSet.man b/libX11/man/XCreateFontSet.man index 3cfe8a1b3..79b0b58b7 100644 --- a/libX11/man/XCreateFontSet.man +++ b/libX11/man/XCreateFontSet.man @@ -369,8 +369,8 @@ list, and .ZN XFontSetExtents , if any, are freed. .SH "SEE ALSO" -XExtentsofFontSet(3X11), -XFontsOfFontSet(3X11), -XFontSetExtents(3X11) +XExtentsofFontSet(__libmansuffix__), +XFontsOfFontSet(__libmansuffix__), +XFontSetExtents(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateGC.man b/libX11/man/XCreateGC.man index 9b698e631..1008ad324 100644 --- a/libX11/man/XCreateGC.man +++ b/libX11/man/XCreateGC.man @@ -1185,21 +1185,21 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -AllPlanes(3X11), -XCopyArea(3X11), -XCreateRegion(3X11), -XDrawArc(3X11), -XDrawLine(3X11), -XDrawRectangle(3X11), -XDrawText(3X11), -XFillRectangle(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +AllPlanes(__libmansuffix__), +XCopyArea(__libmansuffix__), +XCreateRegion(__libmansuffix__), +XDrawArc(__libmansuffix__), +XDrawLine(__libmansuffix__), +XDrawRectangle(__libmansuffix__), +XDrawText(__libmansuffix__), +XFillRectangle(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateIC.man b/libX11/man/XCreateIC.man index 9a1901eda..3db1d2984 100644 --- a/libX11/man/XCreateIC.man +++ b/libX11/man/XCreateIC.man @@ -212,9 +212,9 @@ A value for a Pixmap argument does not name a defined Pixmap. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XOpenIM(3X11), -XSetICFocus(3X11), -XSetICValues(3X11), -XmbResetIC(3X11) +XOpenIM(__libmansuffix__), +XSetICFocus(__libmansuffix__), +XSetICValues(__libmansuffix__), +XmbResetIC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateOC.man b/libX11/man/XCreateOC.man index 7f7eb0c97..382f16383 100644 --- a/libX11/man/XCreateOC.man +++ b/libX11/man/XCreateOC.man @@ -221,7 +221,7 @@ The function returns the output method associated with the specified output context. .SH "SEE ALSO" -XCreateOM(3X11), -XCreateFontSet(3X11) +XCreateOM(__libmansuffix__), +XCreateFontSet(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreatePixmap.man b/libX11/man/XCreatePixmap.man index 15938ca75..72ca06d4a 100644 --- a/libX11/man/XCreatePixmap.man +++ b/libX11/man/XCreatePixmap.man @@ -226,6 +226,6 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCopyArea(3X11) +XCopyArea(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateRegion.man b/libX11/man/XCreateRegion.man index 808d7a159..7c8679597 100644 --- a/libX11/man/XCreateRegion.man +++ b/libX11/man/XCreateRegion.man @@ -174,7 +174,7 @@ The .ZN XDestroyRegion function deallocates the storage associated with a specified region. .SH "SEE ALSO" -XEmptyRegion(3X11), -XIntersectRegion(3X11) +XEmptyRegion(__libmansuffix__), +XIntersectRegion(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateWindow.man b/libX11/man/XCreateWindow.man index c8e03ea91..7b1a7caae 100644 --- a/libX11/man/XCreateWindow.man +++ b/libX11/man/XCreateWindow.man @@ -487,12 +487,12 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XDefineCursor(3X11), -XDestroyWindow(3X11), -XMapWindow(3X11), -XRaiseWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XDefineCursor(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XMapWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCreateWindowEvent.man b/libX11/man/XCreateWindowEvent.man index 8574f4e0b..9d2d1c1a1 100644 --- a/libX11/man/XCreateWindowEvent.man +++ b/libX11/man/XCreateWindowEvent.man @@ -202,30 +202,30 @@ Window manager clients normally should ignore this window if the override_redirect member is .ZN True . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XCrossingEvent.man b/libX11/man/XCrossingEvent.man index 1556b4887..38733e282 100644 --- a/libX11/man/XCrossingEvent.man +++ b/libX11/man/XCrossingEvent.man @@ -299,30 +299,30 @@ The detail member is set to indicate the notify detail and can be or .ZN NotifyNonlinearVirtual . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDefineCursor.man b/libX11/man/XDefineCursor.man index a3000d23e..0426df5e7 100644 --- a/libX11/man/XDefineCursor.man +++ b/libX11/man/XDefineCursor.man @@ -196,7 +196,7 @@ A value for a Cursor argument does not name a defined Cursor. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XCreateFontCursor(3X11), -XRecolorCursor(3X11) +XCreateFontCursor(__libmansuffix__), +XRecolorCursor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDestroyWindow.man b/libX11/man/XDestroyWindow.man index ca4413412..5cab2f8a5 100644 --- a/libX11/man/XDestroyWindow.man +++ b/libX11/man/XDestroyWindow.man @@ -208,11 +208,11 @@ error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XCreateWindow(3X11), -XMapWindow(3X11), -XRaiseWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XMapWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDestroyWindowEvent.man b/libX11/man/XDestroyWindowEvent.man index 91c024b60..c76f91aa9 100644 --- a/libX11/man/XDestroyWindowEvent.man +++ b/libX11/man/XDestroyWindowEvent.man @@ -192,30 +192,30 @@ or was selected. The window member is set to the window that is destroyed. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawArc.man b/libX11/man/XDrawArc.man index af2527678..7a15ff784 100644 --- a/libX11/man/XDrawArc.man +++ b/libX11/man/XDrawArc.man @@ -334,8 +334,8 @@ window is used as a Drawable. Some argument or pair of arguments has the correct type and range but fails to match in some other way required by the request. .SH "SEE ALSO" -XDrawLine(3X11), -XDrawPoint(3X11), -XDrawRectangle(3X11) +XDrawLine(__libmansuffix__), +XDrawPoint(__libmansuffix__), +XDrawRectangle(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawImageString.man b/libX11/man/XDrawImageString.man index 38a581114..596a8f2f8 100644 --- a/libX11/man/XDrawImageString.man +++ b/libX11/man/XDrawImageString.man @@ -245,9 +245,9 @@ window is used as a Drawable. Some argument or pair of arguments has the correct type and range but fails to match in some other way required by the request. .SH "SEE ALSO" -XDrawString(3X11), -XDrawText(3X11), -XLoadFont(3X11), -XTextExtents(3X11) +XDrawString(__libmansuffix__), +XDrawText(__libmansuffix__), +XLoadFont(__libmansuffix__), +XTextExtents(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawLine.man b/libX11/man/XDrawLine.man index 03ae3450e..b76bb39be 100644 --- a/libX11/man/XDrawLine.man +++ b/libX11/man/XDrawLine.man @@ -302,8 +302,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XDrawArc(3X11), -XDrawPoint(3X11), -XDrawRectangle(3X11) +XDrawArc(__libmansuffix__), +XDrawPoint(__libmansuffix__), +XDrawRectangle(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawPoint.man b/libX11/man/XDrawPoint.man index 37be5f546..0ae146619 100644 --- a/libX11/man/XDrawPoint.man +++ b/libX11/man/XDrawPoint.man @@ -246,8 +246,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XDrawArc(3X11), -XDrawLine(3X11), -XDrawRectangle(3X11) +XDrawArc(__libmansuffix__), +XDrawLine(__libmansuffix__), +XDrawRectangle(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawRectangle.man b/libX11/man/XDrawRectangle.man index a210cad1a..da3086fd0 100644 --- a/libX11/man/XDrawRectangle.man +++ b/libX11/man/XDrawRectangle.man @@ -246,8 +246,8 @@ window is used as a Drawable. Some argument or pair of arguments has the correct type and range but fails to match in some other way required by the request. .SH "SEE ALSO" -XDrawArc(3X11), -XDrawLine(3X11), -XDrawPoint(3X11) +XDrawArc(__libmansuffix__), +XDrawLine(__libmansuffix__), +XDrawPoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawString.man b/libX11/man/XDrawString.man index 767be9915..5e8298d53 100644 --- a/libX11/man/XDrawString.man +++ b/libX11/man/XDrawString.man @@ -212,8 +212,8 @@ window is used as a Drawable. Some argument or pair of arguments has the correct type and range but fails to match in some other way required by the request. .SH "SEE ALSO" -XDrawImageString(3X11), -XDrawText(3X11), -XLoadFont(3X11) +XDrawImageString(__libmansuffix__), +XDrawText(__libmansuffix__), +XLoadFont(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XDrawText.man b/libX11/man/XDrawText.man index ae2e44e71..658375354 100644 --- a/libX11/man/XDrawText.man +++ b/libX11/man/XDrawText.man @@ -284,8 +284,8 @@ An .ZN InputOnly window is used as a Drawable. .SH "SEE ALSO" -XDrawImageString(3X11), -XDrawString(3X11), -XLoadFont(3X11) +XDrawImageString(__libmansuffix__), +XDrawString(__libmansuffix__), +XLoadFont(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XEmptyRegion.man b/libX11/man/XEmptyRegion.man index 372119966..43fcc1970 100644 --- a/libX11/man/XEmptyRegion.man +++ b/libX11/man/XEmptyRegion.man @@ -204,7 +204,7 @@ and .ZN RectanglePart if the rectangle is partially in the specified region. .SH "SEE ALSO" -XCreateRegion(3X11), -XIntersectRegion(3X11) +XCreateRegion(__libmansuffix__), +XIntersectRegion(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XErrorEvent.man b/libX11/man/XErrorEvent.man index c74b46b25..49999f537 100644 --- a/libX11/man/XErrorEvent.man +++ b/libX11/man/XErrorEvent.man @@ -175,31 +175,31 @@ The request_code member is a protocol request of the procedure that failed, as defined in .hN X11/Xproto.h . .SH "SEE ALSO" -AllPlanes(3X11), -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +AllPlanes(__libmansuffix__), +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XExposeEvent.man b/libX11/man/XExposeEvent.man index 84cf71291..638f690b7 100644 --- a/libX11/man/XExposeEvent.man +++ b/libX11/man/XExposeEvent.man @@ -205,30 +205,30 @@ between subareas of its window can just ignore all events with nonzero counts and perform full redisplays on events with zero counts. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XExtentsOfFontSet.man b/libX11/man/XExtentsOfFontSet.man index 35d4c7b72..8362e94bd 100644 --- a/libX11/man/XExtentsOfFontSet.man +++ b/libX11/man/XExtentsOfFontSet.man @@ -167,8 +167,8 @@ with the associated .ZN XFontSet . Until freed, its contents will not be modified by Xlib. .SH "SEE ALSO" -XCreateFontSet(3X11), -XFontsOfFontSet(3X11), -XFontSetExtents(3X11) +XCreateFontSet(__libmansuffix__), +XFontsOfFontSet(__libmansuffix__), +XFontSetExtents(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFillRectangle.man b/libX11/man/XFillRectangle.man index 5061f7226..e55aecb24 100644 --- a/libX11/man/XFillRectangle.man +++ b/libX11/man/XFillRectangle.man @@ -388,8 +388,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XDrawArc(3X11), -XDrawPoint(3X11), -XDrawRectangle(3X11) +XDrawArc(__libmansuffix__), +XDrawPoint(__libmansuffix__), +XDrawRectangle(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFilterEvent.man b/libX11/man/XFilterEvent.man index ea6bdce88..6584308be 100644 --- a/libX11/man/XFilterEvent.man +++ b/libX11/man/XFilterEvent.man @@ -182,6 +182,6 @@ returns .ZN True , the client should ungrab the keyboard. .SH "SEE ALSO" -XNextEvent(3X11) +XNextEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFlush.man b/libX11/man/XFlush.man index fa3fc3637..5b439c8c9 100644 --- a/libX11/man/XFlush.man +++ b/libX11/man/XFlush.man @@ -257,9 +257,9 @@ with the mode .ZN QueuedAfterFlush specified. .SH "SEE ALSO" -AllPlanes(3X11), -XIfEvent(3X11), -XNextEvent(3X11), -XPutBackEvent(3X11) +AllPlanes(__libmansuffix__), +XIfEvent(__libmansuffix__), +XNextEvent(__libmansuffix__), +XPutBackEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFocusChangeEvent.man b/libX11/man/XFocusChangeEvent.man index 61f38a7d5..e573f2148 100644 --- a/libX11/man/XFocusChangeEvent.man +++ b/libX11/man/XFocusChangeEvent.man @@ -239,30 +239,30 @@ the detail member is set to indicate the notify detail and can be or .ZN NotifyDetailNone . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFontSetExtents.man b/libX11/man/XFontSetExtents.man index d70428fb1..cb82d3f87 100644 --- a/libX11/man/XFontSetExtents.man +++ b/libX11/man/XFontSetExtents.man @@ -188,8 +188,8 @@ appending a given character to a string may change the string's extent by an amount other than that character's individual extent. .SH "SEE ALSO" -XCreateFontSet(3X11), -XExtentsOfFontSet(3X11), -XFontsOfFontSet(3X11) +XCreateFontSet(__libmansuffix__), +XExtentsOfFontSet(__libmansuffix__), +XFontsOfFontSet(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XFontsOfFontSet.man b/libX11/man/XFontsOfFontSet.man index 7e2dc4781..3409f3af3 100644 --- a/libX11/man/XFontsOfFontSet.man +++ b/libX11/man/XFontsOfFontSet.man @@ -280,10 +280,10 @@ if the drawing functions implement implicit text directionality; otherwise, it returns .ZN False . .SH "SEE ALSO" -XCreateFontSet(3X11), -XCreateOM(3X11), -XCreateOC(3X11), -XExtentsOfFontSet(3X11), -XFontSetExtents(3X11) +XCreateFontSet(__libmansuffix__), +XCreateOM(__libmansuffix__), +XCreateOC(__libmansuffix__), +XExtentsOfFontSet(__libmansuffix__), +XFontSetExtents(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGetEventData.man b/libX11/man/XGetEventData.man index 10008edc4..fdbab45d8 100644 --- a/libX11/man/XGetEventData.man +++ b/libX11/man/XGetEventData.man @@ -217,7 +217,7 @@ is called before the next call to .ZN XNextEvent . .SH "SEE ALSO" -XNextEvent(3X11), +XNextEvent(__libmansuffix__), .br \fI\*(xL\fP diff --git a/libX11/man/XGetVisualInfo.man b/libX11/man/XGetVisualInfo.man index e4f793793..5e634e5df 100644 --- a/libX11/man/XGetVisualInfo.man +++ b/libX11/man/XGetVisualInfo.man @@ -310,6 +310,6 @@ typedef struct { } XVisualInfo; .De .SH "SEE ALSO" -XFree(3X11) +XFree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGetWindowAttributes.man b/libX11/man/XGetWindowAttributes.man index 2aa86e41e..011dcd3bd 100644 --- a/libX11/man/XGetWindowAttributes.man +++ b/libX11/man/XGetWindowAttributes.man @@ -391,7 +391,7 @@ A value for a Drawable argument does not name a defined Window or Pixmap. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XQueryPointer(3X11), -XQueryTree(3X11) +XQueryPointer(__libmansuffix__), +XQueryTree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGetWindowProperty.man b/libX11/man/XGetWindowProperty.man index a1d19ff84..ea7c95027 100644 --- a/libX11/man/XGetWindowProperty.man +++ b/libX11/man/XGetWindowProperty.man @@ -471,7 +471,7 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XFree(3X11), -XInternAtom(3X11) +XFree(__libmansuffix__), +XInternAtom(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGetXCBConnection.man b/libX11/man/XGetXCBConnection.man index eaf71b40d..3b4ad11f7 100644 --- a/libX11/man/XGetXCBConnection.man +++ b/libX11/man/XGetXCBConnection.man @@ -38,7 +38,7 @@ XCB library, just as they would with an XCB connection created with XCB. Callers of this function must link to libX11-xcb and a version of Xlib built with XCB support. .SH "SEE ALSO" -XOpenDisplay(3X11), -XSetEventQueueOwner(3X11), +XOpenDisplay(__libmansuffix__), +XSetEventQueueOwner(__libmansuffix__), .br \fIXlib \- C Language X Interface\fP diff --git a/libX11/man/XGrabButton.man b/libX11/man/XGrabButton.man index a6c20fed1..475e696cd 100644 --- a/libX11/man/XGrabButton.man +++ b/libX11/man/XGrabButton.man @@ -305,9 +305,9 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllowEvents(3X11), -XGrabPointer(3X11), -XGrabKey(3X11), -XGrabKeyboard(3X11), +XAllowEvents(__libmansuffix__), +XGrabPointer(__libmansuffix__), +XGrabKey(__libmansuffix__), +XGrabKeyboard(__libmansuffix__), .br \fI\*(xL\fP diff --git a/libX11/man/XGrabKey.man b/libX11/man/XGrabKey.man index b0cfd8bc3..bc0066c9a 100644 --- a/libX11/man/XGrabKey.man +++ b/libX11/man/XGrabKey.man @@ -291,9 +291,9 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllowAccess(3X11), -XGrabButton(3X11), -XGrabKeyboard(3X11), -XGrabPointer(3X11) +XAllowAccess(__libmansuffix__), +XGrabButton(__libmansuffix__), +XGrabKeyboard(__libmansuffix__), +XGrabPointer(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGrabKeyboard.man b/libX11/man/XGrabKeyboard.man index db1255fd0..f6257f6a7 100644 --- a/libX11/man/XGrabKeyboard.man +++ b/libX11/man/XGrabKeyboard.man @@ -290,9 +290,9 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllowEvents(3X11), -XGrabButton(3X11), -XGrabKey(3X11), -XGrabPointer(3X11) +XAllowEvents(__libmansuffix__), +XGrabButton(__libmansuffix__), +XGrabKey(__libmansuffix__), +XGrabPointer(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGrabPointer.man b/libX11/man/XGrabPointer.man index 46a998697..46c33c0ff 100644 --- a/libX11/man/XGrabPointer.man +++ b/libX11/man/XGrabPointer.man @@ -358,9 +358,9 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllowEvents(3X11), -XGrabButton(3X11), -XGrabKey(3X11), -XGrabKeyboard(3X11) +XAllowEvents(__libmansuffix__), +XGrabButton(__libmansuffix__), +XGrabKey(__libmansuffix__), +XGrabKeyboard(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGrabServer.man b/libX11/man/XGrabServer.man index e3701c701..dea6b7805 100644 --- a/libX11/man/XGrabServer.man +++ b/libX11/man/XGrabServer.man @@ -163,9 +163,9 @@ The function restarts processing of requests and close downs on other connections. You should avoid grabbing the X server as much as possible. .SH "SEE ALSO" -XGrabButton(3X11), -XGrabKey(3X11), -XGrabKeyboard(3X11), -XGrabPointer(3X11) +XGrabButton(__libmansuffix__), +XGrabKey(__libmansuffix__), +XGrabKeyboard(__libmansuffix__), +XGrabPointer(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGraphicsExposeEvent.man b/libX11/man/XGraphicsExposeEvent.man index a5637c84c..b463b7615 100644 --- a/libX11/man/XGraphicsExposeEvent.man +++ b/libX11/man/XGraphicsExposeEvent.man @@ -248,31 +248,31 @@ However, if count is nonzero, at least that number of .ZN GraphicsExpose events (and possibly more) are to follow for this window. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCopyArea(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCopyArea(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XGravityEvent.man b/libX11/man/XGravityEvent.man index c49719e1f..a23a2d8f6 100644 --- a/libX11/man/XGravityEvent.man +++ b/libX11/man/XGravityEvent.man @@ -197,30 +197,30 @@ new parent window's origin and indicate the position of the upper-left outside corner of the window. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XIconifyWindow.man b/libX11/man/XIconifyWindow.man index edb1101a4..2142ed4fa 100644 --- a/libX11/man/XIconifyWindow.man +++ b/libX11/man/XIconifyWindow.man @@ -246,12 +246,12 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XRaiseWindow(3X11), -XMapWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XMapWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XIfEvent.man b/libX11/man/XIfEvent.man index 17c483b45..e77806303 100644 --- a/libX11/man/XIfEvent.man +++ b/libX11/man/XIfEvent.man @@ -244,9 +244,9 @@ After finding a match, the predicate procedure must return If it did not find a match, it must return .ZN False . .SH "SEE ALSO" -XAnyEvent(3X11), -XNextEvent(3X11), -XPutBackEvent(3X11) -XSendEvent(3X11) +XAnyEvent(__libmansuffix__), +XNextEvent(__libmansuffix__), +XPutBackEvent(__libmansuffix__) +XSendEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XInitImage.man b/libX11/man/XInitImage.man index e2c82a6f7..a860eb44a 100644 --- a/libX11/man/XInitImage.man +++ b/libX11/man/XInitImage.man @@ -310,6 +310,6 @@ function deallocates the memory associated with the .ZN XImage structure. .SH "SEE ALSO" -XPutImage(3X11) +XPutImage(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XInstallColormap.man b/libX11/man/XInstallColormap.man index 249ba4954..9ec19bd8d 100644 --- a/libX11/man/XInstallColormap.man +++ b/libX11/man/XInstallColormap.man @@ -239,9 +239,9 @@ A value for a Colormap argument does not name a defined Colormap. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XCreateColormap(3X11), -XCreateWindow(3X11), -XFree(3X11) +XChangeWindowAttributes(__libmansuffix__), +XCreateColormap(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XFree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XInternAtom.man b/libX11/man/XInternAtom.man index 4c7b56f42..4d4906d9a 100644 --- a/libX11/man/XInternAtom.man +++ b/libX11/man/XInternAtom.man @@ -274,7 +274,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XFree(3X11), -XGetWindowProperty(3X11) +XFree(__libmansuffix__), +XGetWindowProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XIntersectRegion.man b/libX11/man/XIntersectRegion.man index c4482f533..a7d318798 100644 --- a/libX11/man/XIntersectRegion.man +++ b/libX11/man/XIntersectRegion.man @@ -219,8 +219,8 @@ function reduces the specified region by a specified amount. Positive values shrink the size of the region, and negative values expand the region. .SH "SEE ALSO" -XCreateRegion(3X11), -XDrawRectangle(3X11), -XEmptyRegion(3X11) +XCreateRegion(__libmansuffix__), +XDrawRectangle(__libmansuffix__), +XEmptyRegion(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XKeymapEvent.man b/libX11/man/XKeymapEvent.man index 356865d7e..0ee041861 100644 --- a/libX11/man/XKeymapEvent.man +++ b/libX11/man/XKeymapEvent.man @@ -193,30 +193,30 @@ The vector is represented as 32 bytes. Byte N (from 0) contains the bits for keys 8N to 8N + 7 with the least significant bit in the byte representing key 8N. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XListFonts.man b/libX11/man/XListFonts.man index 880ff0c4f..74cf5beea 100644 --- a/libX11/man/XListFonts.man +++ b/libX11/man/XListFonts.man @@ -260,7 +260,7 @@ is not thread-safe. If other threads make X requests on the same .ZN Display , then this function's behavior is undefined. .SH "SEE ALSO" -XLoadFont(3X11), -XSetFontPath(3X11) +XLoadFont(__libmansuffix__), +XSetFontPath(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XLoadFont.man b/libX11/man/XLoadFont.man index a13ed844a..0fbf61b8c 100644 --- a/libX11/man/XLoadFont.man +++ b/libX11/man/XLoadFont.man @@ -534,8 +534,8 @@ A value for a Font or GContext argument does not name a defined Font. .ZN BadName A font or color of the specified name does not exist. .SH "SEE ALSO" -XCreateGC(3X11), -XListFonts(3X11), -XSetFontPath(3X11) +XCreateGC(__libmansuffix__), +XListFonts(__libmansuffix__), +XSetFontPath(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XLookupKeysym.man b/libX11/man/XLookupKeysym.man index 7e1ac4aef..4449f2a93 100644 --- a/libX11/man/XLookupKeysym.man +++ b/libX11/man/XLookupKeysym.man @@ -265,8 +265,8 @@ No text conversions are performed; the client is responsible for supplying appropriately encoded strings. Note that you can rebind a KeySym that may not exist. .SH "SEE ALSO" -XButtonEvent(3X11), -XMapEvent(3X11), -XStringToKeysym(3X11) +XButtonEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XStringToKeysym(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XMapEvent.man b/libX11/man/XMapEvent.man index 7f2747c63..29739e169 100644 --- a/libX11/man/XMapEvent.man +++ b/libX11/man/XMapEvent.man @@ -263,30 +263,30 @@ The number in first_keycode represents the first number in the range of the altered mapping, and count represents the number of keycodes altered. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XMapRequestEvent.man b/libX11/man/XMapRequestEvent.man index a8ece726c..15182e86c 100644 --- a/libX11/man/XMapRequestEvent.man +++ b/libX11/man/XMapRequestEvent.man @@ -187,30 +187,30 @@ dispatchers. The parent member is set to the parent window. The window member is set to the window to be mapped. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XMapWindow.man b/libX11/man/XMapWindow.man index b56fa82b8..f164491ba 100644 --- a/libX11/man/XMapWindow.man +++ b/libX11/man/XMapWindow.man @@ -268,11 +268,11 @@ error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XRaiseWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XRaiseWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XNextEvent.man b/libX11/man/XNextEvent.man index cef74855a..6c461919c 100644 --- a/libX11/man/XNextEvent.man +++ b/libX11/man/XNextEvent.man @@ -302,9 +302,9 @@ returns .ZN False , and the output buffer will have been flushed. .SH "SEE ALSO" -XAnyEvent(3X11), -XIfEvent(3X11), -XPutBackEvent(3X11), -XSendEvent(3X11) +XAnyEvent(__libmansuffix__), +XIfEvent(__libmansuffix__), +XPutBackEvent(__libmansuffix__), +XSendEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XOpenDisplay.man b/libX11/man/XOpenDisplay.man index 04ae85195..cb5af5c9e 100644 --- a/libX11/man/XOpenDisplay.man +++ b/libX11/man/XOpenDisplay.man @@ -250,8 +250,8 @@ can generate a .ZN BadGC error. .SH "SEE ALSO" -AllPlanes(3X11), -XFlush(3X11), -XSetCloseDownMode(3X11) +AllPlanes(__libmansuffix__), +XFlush(__libmansuffix__), +XSetCloseDownMode(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XOpenIM.man b/libX11/man/XOpenIM.man index 56171bbae..d3fe2bb35 100644 --- a/libX11/man/XOpenIM.man +++ b/libX11/man/XOpenIM.man @@ -297,9 +297,9 @@ The function returns if it succeeds; otherwise, it returns .ZN False . .SH "SEE ALSO" -XCreateIC(3X11), -XSetICFocus(3X11), -XSetICValues(3X11), -XmbResetIC(3X11) +XCreateIC(__libmansuffix__), +XSetICFocus(__libmansuffix__), +XSetICValues(__libmansuffix__), +XmbResetIC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XOpenOM.man b/libX11/man/XOpenOM.man index 498c01637..a81c3dcb4 100644 --- a/libX11/man/XOpenOM.man +++ b/libX11/man/XOpenOM.man @@ -252,7 +252,7 @@ The .ZN XLocaleOfOM returns the locale associated with the specified output method. .SH "SEE ALSO" -XCreateOC(3X11), -XCreateFontSet(3X11) +XCreateOC(__libmansuffix__), +XCreateFontSet(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XParseGeometry.man b/libX11/man/XParseGeometry.man index 1f5068c09..9e6f1fa29 100644 --- a/libX11/man/XParseGeometry.man +++ b/libX11/man/XParseGeometry.man @@ -279,6 +279,6 @@ of zero to be returned. The caller may pass the address of the hints win_gravity field as gravity_return to update the hints directly. .SH "SEE ALSO" -XSetWMProperties(3X11) +XSetWMProperties(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XPolygonRegion.man b/libX11/man/XPolygonRegion.man index 8be420ccb..984404533 100644 --- a/libX11/man/XPolygonRegion.man +++ b/libX11/man/XPolygonRegion.man @@ -176,8 +176,8 @@ The .ZN XClipBox function returns the smallest rectangle enclosing the specified region. .SH "SEE ALSO" -XCreateGC(3X11), -XDrawPoint(3X11), -XDrawRectangle(3X11) +XCreateGC(__libmansuffix__), +XDrawPoint(__libmansuffix__), +XDrawRectangle(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XPropertyEvent.man b/libX11/man/XPropertyEvent.man index 30ac75a2d..92b6f60b3 100644 --- a/libX11/man/XPropertyEvent.man +++ b/libX11/man/XPropertyEvent.man @@ -216,31 +216,31 @@ or, if the delete argument is .ZN True , .ZN XGetWindowProperty . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGetWindowProperty(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGetWindowProperty(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XPutBackEvent.man b/libX11/man/XPutBackEvent.man index 0fc4bca25..82e383032 100644 --- a/libX11/man/XPutBackEvent.man +++ b/libX11/man/XPutBackEvent.man @@ -161,9 +161,9 @@ would rather deal with it later. There is no limit to the number of times in succession that you can call .ZN XPutBackEvent . .SH "SEE ALSO" -XAnyEvent(3X11), -XIfEvent(3X11), -XNextEvent(3X11), -XSendEvent(3X11) +XAnyEvent(__libmansuffix__), +XIfEvent(__libmansuffix__), +XNextEvent(__libmansuffix__), +XSendEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XQueryBestSize.man b/libX11/man/XQueryBestSize.man index 667d15b41..8aec1cf11 100644 --- a/libX11/man/XQueryBestSize.man +++ b/libX11/man/XQueryBestSize.man @@ -276,13 +276,13 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateGC(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XQueryColor.man b/libX11/man/XQueryColor.man index e2e884b7e..4c389e57c 100644 --- a/libX11/man/XQueryColor.man +++ b/libX11/man/XQueryColor.man @@ -338,8 +338,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XAllocColor(3X11), -XCreateColormap(3X11), -XStoreColors(3X11) +XAllocColor(__libmansuffix__), +XCreateColormap(__libmansuffix__), +XStoreColors(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XQueryPointer.man b/libX11/man/XQueryPointer.man index 708ef2df0..670f532a2 100644 --- a/libX11/man/XQueryPointer.man +++ b/libX11/man/XQueryPointer.man @@ -214,7 +214,7 @@ error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XGetWindowAttributes(3X11), -XQueryTree(3X11) +XGetWindowAttributes(__libmansuffix__), +XQueryTree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XQueryTree.man b/libX11/man/XQueryTree.man index 81338d2aa..c57e53e92 100644 --- a/libX11/man/XQueryTree.man +++ b/libX11/man/XQueryTree.man @@ -176,11 +176,20 @@ The children are listed in current stacking order, from bottom-most returns zero if it fails and nonzero if it succeeds. To free a non-NULL children list when it is no longer needed, use .ZN XFree . +.LP +.ZN XQueryTree +can generate a +.ZN BadWindow +error. .SH BUGS This really should return a screen *, not a root window ID. +.SH DIAGNOSTICS +.TP 1i +.ZN BadWindow +A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XFree(3X11), -XGetWindowAttributes(3X11), -XQueryPointer(3X11) +XFree(__libmansuffix__), +XGetWindowAttributes(__libmansuffix__), +XQueryPointer(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XRaiseWindow.man b/libX11/man/XRaiseWindow.man index 5acb18d83..3717bb86a 100644 --- a/libX11/man/XRaiseWindow.man +++ b/libX11/man/XRaiseWindow.man @@ -337,11 +337,11 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XMapWindow(3X11), -XUnmapWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XMapWindow(__libmansuffix__), +XUnmapWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XReadBitmapFile.man b/libX11/man/XReadBitmapFile.man index 1042ffa9d..877f7771b 100644 --- a/libX11/man/XReadBitmapFile.man +++ b/libX11/man/XReadBitmapFile.man @@ -351,7 +351,7 @@ An .ZN InputOnly window is used as a Drawable. .SH "SEE ALSO" -XCreatePixmap(3X11), -XPutImage(3X11) +XCreatePixmap(__libmansuffix__), +XPutImage(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XRecolorCursor.man b/libX11/man/XRecolorCursor.man index 420228da8..3586d02d3 100644 --- a/libX11/man/XRecolorCursor.man +++ b/libX11/man/XRecolorCursor.man @@ -226,8 +226,8 @@ A value for a Cursor argument does not name a defined Cursor. .ZN BadDrawable A value for a Drawable argument does not name a defined Window or Pixmap. .SH "SEE ALSO" -XCreateColormap(3X11), -XCreateFontCursor(3X11), -XDefineCursor(3X11) +XCreateColormap(__libmansuffix__), +XCreateFontCursor(__libmansuffix__), +XDefineCursor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XReparentEvent.man b/libX11/man/XReparentEvent.man index 228661c4d..4f25eb847 100644 --- a/libX11/man/XReparentEvent.man +++ b/libX11/man/XReparentEvent.man @@ -204,30 +204,30 @@ Window manager clients normally should ignore this window if the override_redirect member is .ZN True . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XReparentWindow.man b/libX11/man/XReparentWindow.man index ae3363fa4..43c30f6db 100644 --- a/libX11/man/XReparentWindow.man +++ b/libX11/man/XReparentWindow.man @@ -224,6 +224,6 @@ errors. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeSaveSet(3X11) +XChangeSaveSet(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XResizeRequestEvent.man b/libX11/man/XResizeRequestEvent.man index eb522f35b..4b22b0388 100644 --- a/libX11/man/XResizeRequestEvent.man +++ b/libX11/man/XResizeRequestEvent.man @@ -189,30 +189,30 @@ client attempted to change. The width and height members are set to the inside size of the window, excluding the border. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSelectionClearEvent.man b/libX11/man/XSelectionClearEvent.man index d1860349a..6ac8f3cc3 100644 --- a/libX11/man/XSelectionClearEvent.man +++ b/libX11/man/XSelectionClearEvent.man @@ -193,31 +193,31 @@ The window member is the window that was specified by the current owner .ZN XSetSelectionOwner call. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XSetSelectionOwner(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XSetSelectionOwner(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSelectionEvent.man b/libX11/man/XSelectionEvent.man index e68eef706..89c0f7f3e 100644 --- a/libX11/man/XSelectionEvent.man +++ b/libX11/man/XSelectionEvent.man @@ -202,30 +202,30 @@ The time member is set to the time the conversion took place and can be a timestamp or .ZN CurrentTime . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSelectionRequestEvent.man b/libX11/man/XSelectionRequestEvent.man index ae15700a2..d8aaa0dc8 100644 --- a/libX11/man/XSelectionRequestEvent.man +++ b/libX11/man/XSelectionRequestEvent.man @@ -205,31 +205,31 @@ value from the .ZN ConvertSelection request. .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSetSelectionOwner(3X11), -XUnmapEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSetSelectionOwner(__libmansuffix__), +XUnmapEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSendEvent.man b/libX11/man/XSendEvent.man index 5c8971598..a83db14af 100644 --- a/libX11/man/XSendEvent.man +++ b/libX11/man/XSendEvent.man @@ -307,9 +307,9 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAnyEvent(3X11), -XIfEvent(3X11), -XNextEvent(3X11), -XPutBackEvent(3X11) +XAnyEvent(__libmansuffix__), +XIfEvent(__libmansuffix__), +XNextEvent(__libmansuffix__), +XPutBackEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetArcMode.man b/libX11/man/XSetArcMode.man index 0862e95ad..5668059b8 100644 --- a/libX11/man/XSetArcMode.man +++ b/libX11/man/XSetArcMode.man @@ -230,14 +230,14 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCopyArea(3X11), -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +XCopyArea(__libmansuffix__), +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetClipOrigin.man b/libX11/man/XSetClipOrigin.man index ddbe6cfe9..94198b8fa 100644 --- a/libX11/man/XSetClipOrigin.man +++ b/libX11/man/XSetClipOrigin.man @@ -282,14 +282,14 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateGC(3X11), -XDrawRectangle(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XDrawRectangle(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetCommand.man b/libX11/man/XSetCommand.man index c64e2705a..cbcd29e14 100644 --- a/libX11/man/XSetCommand.man +++ b/libX11/man/XSetCommand.man @@ -208,18 +208,18 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetErrorHandler.man b/libX11/man/XSetErrorHandler.man index 5ccf3a91b..3ead230de 100644 --- a/libX11/man/XSetErrorHandler.man +++ b/libX11/man/XSetErrorHandler.man @@ -270,7 +270,7 @@ is used for the message argument. If no string is found in the error database, the default_string is returned to the buffer argument. .SH "SEE ALSO" -XOpenDisplay(3X11), -XSynchronize(3X11) +XOpenDisplay(__libmansuffix__), +XSynchronize(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetEventQueueOwner.man b/libX11/man/XSetEventQueueOwner.man index e3306aa7a..d9740d4c6 100644 --- a/libX11/man/XSetEventQueueOwner.man +++ b/libX11/man/XSetEventQueueOwner.man @@ -52,7 +52,7 @@ clients. Clients can call \fIXSetEventQueueOwner\fP immediately after call \fIXSetEventQueueOwner\fP at any other time, as this will potentially lose responses. .SH "SEE ALSO" -XOpenDisplay(3X11), -XGetXCBConnection(3X11), +XOpenDisplay(__libmansuffix__), +XGetXCBConnection(__libmansuffix__), .br \fIXlib \- C Language X Interface\fP diff --git a/libX11/man/XSetFillStyle.man b/libX11/man/XSetFillStyle.man index e8700db1a..cb6e663e9 100644 --- a/libX11/man/XSetFillStyle.man +++ b/libX11/man/XSetFillStyle.man @@ -207,13 +207,13 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetFont.man b/libX11/man/XSetFont.man index 4b44e2262..e2422d37d 100644 --- a/libX11/man/XSetFont.man +++ b/libX11/man/XSetFont.man @@ -176,13 +176,13 @@ A value for a Font or GContext argument does not name a defined Font. .ZN BadGC A value for a GContext argument does not name a defined GContext. .SH "SEE ALSO" -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetLineAttributes(3X11), -XSetState(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetFontPath.man b/libX11/man/XSetFontPath.man index 2548a5f3d..4ae4efbfb 100644 --- a/libX11/man/XSetFontPath.man +++ b/libX11/man/XSetFontPath.man @@ -208,7 +208,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XListFont(3X11), -XLoadFonts(3X11) +XListFont(__libmansuffix__), +XLoadFonts(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetICFocus.man b/libX11/man/XSetICFocus.man index 19b81849c..c759bfca5 100644 --- a/libX11/man/XSetICFocus.man +++ b/libX11/man/XSetICFocus.man @@ -177,9 +177,9 @@ does not affect the focus window value; the client may still receive events from the input method that are directed to the focus window. .SH "SEE ALSO" -XCreateIC(3X11), -XOpenIM(3X11), -XSetICValues(3X11), -XmbResetIC(3X11) +XCreateIC(__libmansuffix__), +XOpenIM(__libmansuffix__), +XSetICValues(__libmansuffix__), +XmbResetIC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetICValues.man b/libX11/man/XSetICValues.man index 1e072f736..4d5c1aebb 100644 --- a/libX11/man/XSetICValues.man +++ b/libX11/man/XSetICValues.man @@ -228,9 +228,9 @@ A value for a Pixmap argument does not name a defined Pixmap. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XCreateIC(3X11), -XOpenIM(3X11), -XSetICFocus(3X11), -XmbResetIC(3X11) +XCreateIC(__libmansuffix__), +XOpenIM(__libmansuffix__), +XSetICFocus(__libmansuffix__), +XmbResetIC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetInputFocus.man b/libX11/man/XSetInputFocus.man index 14d26550a..45408e719 100644 --- a/libX11/man/XSetInputFocus.man +++ b/libX11/man/XSetInputFocus.man @@ -271,6 +271,6 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XWarpPointer(3X11) +XWarpPointer(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetLineAttributes.man b/libX11/man/XSetLineAttributes.man index 09be3f58f..6c7c44a61 100644 --- a/libX11/man/XSetLineAttributes.man +++ b/libX11/man/XSetLineAttributes.man @@ -256,13 +256,13 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetState(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetState(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetPointerMapping.man b/libX11/man/XSetPointerMapping.man index 7b0845a16..0e4203385 100644 --- a/libX11/man/XSetPointerMapping.man +++ b/libX11/man/XSetPointerMapping.man @@ -212,7 +212,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XChangeKeyboardControl(3X11), -XChangeKeyboardMapping(3X11) +XChangeKeyboardControl(__libmansuffix__), +XChangeKeyboardMapping(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetState.man b/libX11/man/XSetState.man index aa0143d1f..c1a3fb299 100644 --- a/libX11/man/XSetState.man +++ b/libX11/man/XSetState.man @@ -245,13 +245,13 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetTile(3X11) +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetTile(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetTextProperty.man b/libX11/man/XSetTextProperty.man index b7ae9ea52..8a49bd5a6 100644 --- a/libX11/man/XSetTextProperty.man +++ b/libX11/man/XSetTextProperty.man @@ -251,18 +251,18 @@ alternatives can generate this error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetTile.man b/libX11/man/XSetTile.man index 0fa1e041f..50ea868df 100644 --- a/libX11/man/XSetTile.man +++ b/libX11/man/XSetTile.man @@ -230,13 +230,13 @@ to match in some other way required by the request. .ZN BadPixmap A value for a Pixmap argument does not name a defined Pixmap. .SH "SEE ALSO" -XCreateGC(3X11), -XQueryBestSize(3X11), -XSetArcMode(3X11), -XSetClipOrigin(3X11), -XSetFillStyle(3X11), -XSetFont(3X11), -XSetLineAttributes(3X11), -XSetState(3X11) +XCreateGC(__libmansuffix__), +XQueryBestSize(__libmansuffix__), +XSetArcMode(__libmansuffix__), +XSetClipOrigin(__libmansuffix__), +XSetFillStyle(__libmansuffix__), +XSetFont(__libmansuffix__), +XSetLineAttributes(__libmansuffix__), +XSetState(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetTransientForHint.man b/libX11/man/XSetTransientForHint.man index 03c292d28..52ff295eb 100644 --- a/libX11/man/XSetTransientForHint.man +++ b/libX11/man/XSetTransientForHint.man @@ -195,18 +195,18 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XSetCommand(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMClientMachine.man b/libX11/man/XSetWMClientMachine.man index 504a59403..252b4a26f 100644 --- a/libX11/man/XSetWMClientMachine.man +++ b/libX11/man/XSetWMClientMachine.man @@ -182,18 +182,18 @@ otherwise, it returns a zero status. \s-1WM_CLIENT_MACHINE\s+1 The string name of the machine on which the client application is running. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMColormapWindows.man b/libX11/man/XSetWMColormapWindows.man index b9eca2e7b..eff4773c0 100644 --- a/libX11/man/XSetWMColormapWindows.man +++ b/libX11/man/XSetWMColormapWindows.man @@ -221,19 +221,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMIconName.man b/libX11/man/XSetWMIconName.man index b389a9064..28f33b981 100644 --- a/libX11/man/XSetWMIconName.man +++ b/libX11/man/XSetWMIconName.man @@ -233,19 +233,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMName.man b/libX11/man/XSetWMName.man index 5a040718d..80f3cd64c 100644 --- a/libX11/man/XSetWMName.man +++ b/libX11/man/XSetWMName.man @@ -240,19 +240,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMProperties.man b/libX11/man/XSetWMProperties.man index 7c4ce585f..348b51bca 100644 --- a/libX11/man/XSetWMProperties.man +++ b/libX11/man/XSetWMProperties.man @@ -372,20 +372,20 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XParseGeometry(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProtocols(3X11), -XStringListToTextProperty(3X11), -XTextListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XParseGeometry(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProtocols(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__), +XTextListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSetWMProtocols.man b/libX11/man/XSetWMProtocols.man index d75f40814..4c59fe0ad 100644 --- a/libX11/man/XSetWMProtocols.man +++ b/libX11/man/XSetWMProtocols.man @@ -219,19 +219,19 @@ The server failed to allocate the requested resource or server memory. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XStringListToTextProperty(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XStoreBytes.man b/libX11/man/XStoreBytes.man index dda24e028..e32fb5fb6 100644 --- a/libX11/man/XStoreBytes.man +++ b/libX11/man/XStoreBytes.man @@ -249,6 +249,6 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XFree(3X11) +XFree(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XStoreColors.man b/libX11/man/XStoreColors.man index 6b516adac..66dadb1c3 100644 --- a/libX11/man/XStoreColors.man +++ b/libX11/man/XStoreColors.man @@ -298,8 +298,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XAllocColor(3X11), -XCreateColormap(3X11), -XQueryColor(3X11) +XAllocColor(__libmansuffix__), +XCreateColormap(__libmansuffix__), +XQueryColor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XStringListToTextProperty.man b/libX11/man/XStringListToTextProperty.man index abba41945..3bd38e959 100644 --- a/libX11/man/XStringListToTextProperty.man +++ b/libX11/man/XStringListToTextProperty.man @@ -237,19 +237,19 @@ typedef struct { } XTextProperty; .De .SH "SEE ALSO" -XAllocClassHint(3X11), -XAllocIconSize(3X11), -XAllocSizeHints(3X11), -XAllocWMHints(3X11), -XFree(3X11), -XSetCommand(3X11), -XSetTransientForHint(3X11), -XSetTextProperty(3X11), -XSetWMClientMachine(3X11), -XSetWMColormapWindows(3X11), -XSetWMIconName(3X11), -XSetWMName(3X11), -XSetWMProperties(3X11), -XSetWMProtocols(3X11) +XAllocClassHint(__libmansuffix__), +XAllocIconSize(__libmansuffix__), +XAllocSizeHints(__libmansuffix__), +XAllocWMHints(__libmansuffix__), +XFree(__libmansuffix__), +XSetCommand(__libmansuffix__), +XSetTransientForHint(__libmansuffix__), +XSetTextProperty(__libmansuffix__), +XSetWMClientMachine(__libmansuffix__), +XSetWMColormapWindows(__libmansuffix__), +XSetWMIconName(__libmansuffix__), +XSetWMName(__libmansuffix__), +XSetWMProperties(__libmansuffix__), +XSetWMProtocols(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XStringToKeysym.man b/libX11/man/XStringToKeysym.man index 511bd3aa1..30792f1b3 100644 --- a/libX11/man/XStringToKeysym.man +++ b/libX11/man/XStringToKeysym.man @@ -217,6 +217,6 @@ upper_return. Support for conversion of other than Latin and Cyrillic KeySyms is implementation-dependent. .SH "SEE ALSO" -XLookupKeysym(3X11) +XLookupKeysym(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XSynchronize.man b/libX11/man/XSynchronize.man index 404631e98..5b251116a 100644 --- a/libX11/man/XSynchronize.man +++ b/libX11/man/XSynchronize.man @@ -175,6 +175,6 @@ The specified procedure is called with only a display pointer. .ZN XSetAfterFunction returns the previous after function. .SH "SEE ALSO" -XSetErrorHandler(3X11) +XSetErrorHandler(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XTextExtents.man b/libX11/man/XTextExtents.man index becf7f44a..85724baab 100644 --- a/libX11/man/XTextExtents.man +++ b/libX11/man/XTextExtents.man @@ -285,7 +285,7 @@ A value for a Font or GContext argument does not name a defined Font. .ZN BadGC A value for a GContext argument does not name a defined GContext. .SH "SEE ALSO" -XLoadFont(3X11), -XTextWidth(3X11) +XLoadFont(__libmansuffix__), +XTextWidth(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XTextWidth.man b/libX11/man/XTextWidth.man index 2e2c79483..bc454114d 100644 --- a/libX11/man/XTextWidth.man +++ b/libX11/man/XTextWidth.man @@ -164,7 +164,7 @@ and .ZN XTextWidth16 functions return the width of the specified 8-bit or 2-byte character strings. .SH "SEE ALSO" -XLoadFont(3X11), -XTextExtents(3X11) +XLoadFont(__libmansuffix__), +XTextExtents(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XUnmapEvent.man b/libX11/man/XUnmapEvent.man index a0623f757..431013750 100644 --- a/libX11/man/XUnmapEvent.man +++ b/libX11/man/XUnmapEvent.man @@ -199,30 +199,30 @@ if the event was generated as a result of a resizing of the window's parent when the window itself had a win_gravity of .ZN UnmapGravity . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XVisibilityEvent(3X11) +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XVisibilityEvent(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XUnmapWindow.man b/libX11/man/XUnmapWindow.man index 0c5f5aaaa..4ed20496f 100644 --- a/libX11/man/XUnmapWindow.man +++ b/libX11/man/XUnmapWindow.man @@ -201,11 +201,11 @@ error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XChangeWindowAttributes(3X11), -XConfigureWindow(3X11), -XCreateWindow(3X11), -XDestroyWindow(3X11), -XMapWindow(3X11) -XRaiseWindow(3X11) +XChangeWindowAttributes(__libmansuffix__), +XConfigureWindow(__libmansuffix__), +XCreateWindow(__libmansuffix__), +XDestroyWindow(__libmansuffix__), +XMapWindow(__libmansuffix__) +XRaiseWindow(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XVisibilityEvent.man b/libX11/man/XVisibilityEvent.man index 7b878cf5d..90bce0d79 100644 --- a/libX11/man/XVisibilityEvent.man +++ b/libX11/man/XVisibilityEvent.man @@ -217,30 +217,30 @@ the X server generates the event with the state member of the structure set to .ZN VisibilityFullyObscured . .SH "SEE ALSO" -XAnyEvent(3X11), -XButtonEvent(3X11), -XCreateWindowEvent(3X11), -XCirculateEvent(3X11), -XCirculateRequestEvent(3X11), -XColormapEvent(3X11), -XConfigureEvent(3X11), -XConfigureRequestEvent(3X11), -XCrossingEvent(3X11), -XDestroyWindowEvent(3X11), -XErrorEvent(3X11), -XExposeEvent(3X11), -XFocusChangeEvent(3X11), -XGraphicsExposeEvent(3X11), -XGravityEvent(3X11), -XKeymapEvent(3X11), -XMapEvent(3X11), -XMapRequestEvent(3X11), -XPropertyEvent(3X11), -XReparentEvent(3X11), -XResizeRequestEvent(3X11), -XSelectionClearEvent(3X11), -XSelectionEvent(3X11), -XSelectionRequestEvent(3X11), -XUnmapEvent(3X11), +XAnyEvent(__libmansuffix__), +XButtonEvent(__libmansuffix__), +XCreateWindowEvent(__libmansuffix__), +XCirculateEvent(__libmansuffix__), +XCirculateRequestEvent(__libmansuffix__), +XColormapEvent(__libmansuffix__), +XConfigureEvent(__libmansuffix__), +XConfigureRequestEvent(__libmansuffix__), +XCrossingEvent(__libmansuffix__), +XDestroyWindowEvent(__libmansuffix__), +XErrorEvent(__libmansuffix__), +XExposeEvent(__libmansuffix__), +XFocusChangeEvent(__libmansuffix__), +XGraphicsExposeEvent(__libmansuffix__), +XGravityEvent(__libmansuffix__), +XKeymapEvent(__libmansuffix__), +XMapEvent(__libmansuffix__), +XMapRequestEvent(__libmansuffix__), +XPropertyEvent(__libmansuffix__), +XReparentEvent(__libmansuffix__), +XResizeRequestEvent(__libmansuffix__), +XSelectionClearEvent(__libmansuffix__), +XSelectionEvent(__libmansuffix__), +XSelectionRequestEvent(__libmansuffix__), +XUnmapEvent(__libmansuffix__), .br \fI\*(xL\fP diff --git a/libX11/man/XWarpPointer.man b/libX11/man/XWarpPointer.man index 07ec5d53c..21549a740 100644 --- a/libX11/man/XWarpPointer.man +++ b/libX11/man/XWarpPointer.man @@ -213,6 +213,6 @@ error. .ZN BadWindow A value for a Window argument does not name a defined Window. .SH "SEE ALSO" -XSetInputFocus(3X11) +XSetInputFocus(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsAllocColor.man b/libX11/man/XcmsAllocColor.man index bf93c7369..da571e041 100644 --- a/libX11/man/XcmsAllocColor.man +++ b/libX11/man/XcmsAllocColor.man @@ -250,7 +250,7 @@ errors. .ZN BadColor A value for a Colormap argument does not name a defined Colormap. .SH "SEE ALSO" -XcmsQueryColor(3X11), -XcmsStoreColor(3X11) +XcmsQueryColor(__libmansuffix__), +XcmsStoreColor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsCCCOfColormap.man b/libX11/man/XcmsCCCOfColormap.man index 0303cd363..58e3c1c2e 100644 --- a/libX11/man/XcmsCCCOfColormap.man +++ b/libX11/man/XcmsCCCOfColormap.man @@ -179,10 +179,10 @@ Several colormaps may share the same CCC without restriction; this includes the CCCs generated by Xlib with each colormap. Xlib, however, creates a new CCC with each new colormap. .SH "SEE ALSO" -DisplayOfCCC(3X11), -XcmsConvertColors(3X11), -XcmsCreateCCC(3X11), -XcmsDefaultCCC(3X11), -XcmsSetWhitePoint(3X11) +DisplayOfCCC(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), +XcmsCreateCCC(__libmansuffix__), +XcmsDefaultCCC(__libmansuffix__), +XcmsSetWhitePoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsCIELabQueryMaxC.man b/libX11/man/XcmsCIELabQueryMaxC.man index 58484b42e..7a0009501 100644 --- a/libX11/man/XcmsCIELabQueryMaxC.man +++ b/libX11/man/XcmsCIELabQueryMaxC.man @@ -215,8 +215,8 @@ An return value usually indicates that the given chroma is beyond maximum for the given hue angle. .SH "SEE ALSO" -XcmsCIELuvQueryMaxC(3X11), -XcmsTekHVCQueryMaxC(3X11), -XcmsQueryBlack(3X11) +XcmsCIELuvQueryMaxC(__libmansuffix__), +XcmsTekHVCQueryMaxC(__libmansuffix__), +XcmsQueryBlack(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsCIELuvQueryMaxC.man b/libX11/man/XcmsCIELuvQueryMaxC.man index af469c5f3..355c398f6 100644 --- a/libX11/man/XcmsCIELuvQueryMaxC.man +++ b/libX11/man/XcmsCIELuvQueryMaxC.man @@ -215,8 +215,8 @@ An return value usually indicates that the given chroma is beyond maximum for the given hue angle. .SH "SEE ALSO" -XcmsCIELabQueryMaxC(3X11), -XcmsTekHVCQueryMaxC(3X11), -XcmsQueryBlack(3X11) +XcmsCIELabQueryMaxC(__libmansuffix__), +XcmsTekHVCQueryMaxC(__libmansuffix__), +XcmsQueryBlack(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsColor.man b/libX11/man/XcmsColor.man index c039cbf3a..ee44e8dd2 100644 --- a/libX11/man/XcmsColor.man +++ b/libX11/man/XcmsColor.man @@ -258,8 +258,8 @@ The structure contains a union of substructures, each supporting color specification encoding for a particular color space. .SH "SEE ALSO" -XcmsAllocColor(3X11), -XcmsStoreColor(3X11), -XcmsConvertColors(3X11), +XcmsAllocColor(__libmansuffix__), +XcmsStoreColor(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), .LP \fI\*(xL\fP diff --git a/libX11/man/XcmsConvertColors.man b/libX11/man/XcmsConvertColors.man index 9e3ca6163..96c415479 100644 --- a/libX11/man/XcmsConvertColors.man +++ b/libX11/man/XcmsConvertColors.man @@ -193,10 +193,10 @@ a device-dependent format (for example, all specifications are converted to CIE XYZ format and then to the target device-dependent format. .SH "SEE ALSO" -DisplayOfCCC(3X11), -XcmsCCCOfColormap(3X11), -XcmsCreateCCC(3X11), -XcmsDefaultCCC(3X11), -XcmsSetWhitePoint(3X11) +DisplayOfCCC(__libmansuffix__), +XcmsCCCOfColormap(__libmansuffix__), +XcmsCreateCCC(__libmansuffix__), +XcmsDefaultCCC(__libmansuffix__), +XcmsSetWhitePoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsCreateCCC.man b/libX11/man/XcmsCreateCCC.man index 24fcee8ed..dc19f9fca 100644 --- a/libX11/man/XcmsCreateCCC.man +++ b/libX11/man/XcmsCreateCCC.man @@ -194,10 +194,10 @@ function frees the memory used for the specified CCC. Note that default CCCs and those currently associated with colormaps are ignored. .SH "SEE ALSO" -DisplayOfCCC(3X11), -XcmsCCCOfColormap(3X11), -XcmsConvertColors(3X11), -XcmsDefaultCCC(3X11), -XcmsSetWhitePoint(3X11) +DisplayOfCCC(__libmansuffix__), +XcmsCCCOfColormap(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), +XcmsDefaultCCC(__libmansuffix__), +XcmsSetWhitePoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsDefaultCCC.man b/libX11/man/XcmsDefaultCCC.man index fe703c1ac..95dc18066 100644 --- a/libX11/man/XcmsDefaultCCC.man +++ b/libX11/man/XcmsDefaultCCC.man @@ -161,10 +161,10 @@ Its initial gamut compression and white point adjustment procedures as well as the associated client data are implementation specific. .SH "SEE ALSO" -DisplayOfCCC(3X11), -XcmsCCCOfColormap(3X11), -XcmsConvertColors(3X11), -XcmsCreateCCC(3X11), -XcmsSetWhitePoint(3X11) +DisplayOfCCC(__libmansuffix__), +XcmsCCCOfColormap(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), +XcmsCreateCCC(__libmansuffix__), +XcmsSetWhitePoint(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsQueryBlack.man b/libX11/man/XcmsQueryBlack.man index de67a6ec4..29556b430 100644 --- a/libX11/man/XcmsQueryBlack.man +++ b/libX11/man/XcmsQueryBlack.man @@ -199,8 +199,8 @@ The function returns the color specification in the specified target format for full-intensity red, green, and blue. .SH "SEE ALSO" -XcmsCIELabQueryMaxC(3X11), -XcmsCIELuvQueryMaxC(3X11), -XcmsTekHVCQueryMaxC(3X11) +XcmsCIELabQueryMaxC(__libmansuffix__), +XcmsCIELuvQueryMaxC(__libmansuffix__), +XcmsTekHVCQueryMaxC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsQueryColor.man b/libX11/man/XcmsQueryColor.man index b32b8c655..a42a38309 100644 --- a/libX11/man/XcmsQueryColor.man +++ b/libX11/man/XcmsQueryColor.man @@ -260,8 +260,8 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XcmsAllocColor(3X11), -XcmsStoreColor(3X11), -XQueryColor(3X11) +XcmsAllocColor(__libmansuffix__), +XcmsStoreColor(__libmansuffix__), +XQueryColor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsSetWhitePoint.man b/libX11/man/XcmsSetWhitePoint.man index 1af22e20e..b87afe7b2 100644 --- a/libX11/man/XcmsSetWhitePoint.man +++ b/libX11/man/XcmsSetWhitePoint.man @@ -189,10 +189,10 @@ function first sets the white point adjustment procedure and client data in the specified CCC with the newly specified procedure and client data and then returns the old procedure. .SH "SEE ALSO" -DisplayOfCCC(3X11), -XcmsCCCOfColormap(3X11), -XcmsConvertColors(3X11), -XcmsCreateCCC(3X11), -XcmsDefaultCCC(3X11) +DisplayOfCCC(__libmansuffix__), +XcmsCCCOfColormap(__libmansuffix__), +XcmsConvertColors(__libmansuffix__), +XcmsCreateCCC(__libmansuffix__), +XcmsDefaultCCC(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsStoreColor.man b/libX11/man/XcmsStoreColor.man index b51889bed..270e61fbd 100644 --- a/libX11/man/XcmsStoreColor.man +++ b/libX11/man/XcmsStoreColor.man @@ -301,7 +301,7 @@ Unless a specific range is specified for an argument, the full range defined by the argument's type is accepted. Any argument defined as a set of alternatives can generate this error. .SH "SEE ALSO" -XcmsAllocColor(3X11), -XcmsQueryColor(3X11) +XcmsAllocColor(__libmansuffix__), +XcmsQueryColor(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XcmsTekHVCQueryMaxC.man b/libX11/man/XcmsTekHVCQueryMaxC.man index e98de0226..2407b85ec 100644 --- a/libX11/man/XcmsTekHVCQueryMaxC.man +++ b/libX11/man/XcmsTekHVCQueryMaxC.man @@ -237,8 +237,8 @@ determines the minimum Value in TekHVC color space displayable by the screen. It returns the minimum Value and the actual Hue and Chroma at which the minimum Value was found. .SH "SEE ALSO" -XcmsCIELabQueryMaxC(3X11), -XcmsCIELuvQueryMaxC(3X11), -XcmsQueryBlack(3X11) +XcmsCIELabQueryMaxC(__libmansuffix__), +XcmsCIELuvQueryMaxC(__libmansuffix__), +XcmsQueryBlack(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbDrawImageString.man b/libX11/man/XmbDrawImageString.man index 335077fdb..9632f68ac 100644 --- a/libX11/man/XmbDrawImageString.man +++ b/libX11/man/XmbDrawImageString.man @@ -208,10 +208,10 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XDrawImageString(3X11), -XDrawString(3X11), -XDrawText(3X11), -XmbDrawString(3X11), -XmbDrawText(3X11) +XDrawImageString(__libmansuffix__), +XDrawString(__libmansuffix__), +XDrawText(__libmansuffix__), +XmbDrawString(__libmansuffix__), +XmbDrawText(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbDrawString.man b/libX11/man/XmbDrawString.man index 0af25f151..b1072fd90 100644 --- a/libX11/man/XmbDrawString.man +++ b/libX11/man/XmbDrawString.man @@ -199,10 +199,10 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XDrawImageString(3X11), -XDrawString(3X11), -XDrawText(3X11), -XmbDrawImageString(3X11), -XmbDrawText(3X11) +XDrawImageString(__libmansuffix__), +XDrawString(__libmansuffix__), +XDrawText(__libmansuffix__), +XmbDrawImageString(__libmansuffix__), +XmbDrawText(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbDrawText.man b/libX11/man/XmbDrawText.man index b857f5a1f..933f1ad55 100644 --- a/libX11/man/XmbDrawText.man +++ b/libX11/man/XmbDrawText.man @@ -248,10 +248,10 @@ typedef struct { } XwcTextItem; .De .SH "SEE ALSO" -XDrawImageString(3X11), -XDrawString(3X11), -XDrawText(3X11), -XmbDrawImageString(3X11), -XmbDrawString(3X11) +XDrawImageString(__libmansuffix__), +XDrawString(__libmansuffix__), +XDrawText(__libmansuffix__), +XmbDrawImageString(__libmansuffix__), +XmbDrawString(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbLookupString.man b/libX11/man/XmbLookupString.man index c2413aec0..c5c1ef434 100644 --- a/libX11/man/XmbLookupString.man +++ b/libX11/man/XmbLookupString.man @@ -306,6 +306,6 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XLookupKeysym(3X11) +XLookupKeysym(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbResetIC.man b/libX11/man/XmbResetIC.man index 793921451..53507147a 100644 --- a/libX11/man/XmbResetIC.man +++ b/libX11/man/XmbResetIC.man @@ -204,9 +204,9 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XCreateIC(3X11), -XOpenIM(3X11), -XSetICFocus(3X11), -XSetICValues(3X11) +XCreateIC(__libmansuffix__), +XOpenIM(__libmansuffix__), +XSetICFocus(__libmansuffix__), +XSetICValues(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbTextEscapement.man b/libX11/man/XmbTextEscapement.man index 85c44d6a3..8ed008539 100644 --- a/libX11/man/XmbTextEscapement.man +++ b/libX11/man/XmbTextEscapement.man @@ -186,6 +186,6 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XmbTextExtents(3X11), -XmbTextPerCharExtents(3X11) +XmbTextExtents(__libmansuffix__), +XmbTextPerCharExtents(__libmansuffix__) \fI\*(xL\fP diff --git a/libX11/man/XmbTextExtents.man b/libX11/man/XmbTextExtents.man index 7275224f1..055a6b187 100644 --- a/libX11/man/XmbTextExtents.man +++ b/libX11/man/XmbTextExtents.man @@ -222,6 +222,6 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XmbTextEscapement(3X11), -XmbTextPerCharExtents(3X11) +XmbTextEscapement(__libmansuffix__), +XmbTextPerCharExtents(__libmansuffix__) \fI\*(xL\fP diff --git a/libX11/man/XmbTextListToTextProperty.man b/libX11/man/XmbTextListToTextProperty.man index 23501e9b1..bd802948e 100644 --- a/libX11/man/XmbTextListToTextProperty.man +++ b/libX11/man/XmbTextListToTextProperty.man @@ -455,7 +455,7 @@ typedef enum { } XICCEncodingStyle; .De .SH "SEE ALSO" -XSetTextProperty(3X11), -XStringListToTextProperty(3X11) +XSetTextProperty(__libmansuffix__), +XStringListToTextProperty(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XmbTextPerCharExtents.man b/libX11/man/XmbTextPerCharExtents.man index 3f7b2c4ce..9fda94dfe 100644 --- a/libX11/man/XmbTextPerCharExtents.man +++ b/libX11/man/XmbTextPerCharExtents.man @@ -252,6 +252,6 @@ release. Its presence is indicated by the macro .ZN X_HAVE_UTF8_STRING . .SH "SEE ALSO" -XmbTextEscapement(3X11), -XmbTextExtents(3X11) +XmbTextEscapement(__libmansuffix__), +XmbTextExtents(__libmansuffix__) \fI\*(xL\fP diff --git a/libX11/man/XrmEnumerateDatabase.man b/libX11/man/XrmEnumerateDatabase.man index 67bc1e055..73ff07f31 100644 --- a/libX11/man/XrmEnumerateDatabase.man +++ b/libX11/man/XrmEnumerateDatabase.man @@ -228,8 +228,8 @@ If Xlib has been initialized for threads, the procedure is called with the database locked and the result of a call by the procedure to any Xlib function using the same database is not defined. .SH "SEE ALSO" -XrmGetResource(3X11), -XrmInitialize(3X11), -XrmPutResource(3X11) +XrmGetResource(__libmansuffix__), +XrmInitialize(__libmansuffix__), +XrmPutResource(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmGetFileDatabase.man b/libX11/man/XrmGetFileDatabase.man index c46994a94..2cf051fc5 100644 --- a/libX11/man/XrmGetFileDatabase.man +++ b/libX11/man/XrmGetFileDatabase.man @@ -317,8 +317,8 @@ the octal value specified by the sequence. Finally, the two-character sequence ``\^\\\\'' is recognized and replaced with a single backslash. .SH "SEE ALSO" -XrmGetResource(3X11), -XrmInitialize(3X11), -XrmPutResource(3X11) +XrmGetResource(__libmansuffix__), +XrmInitialize(__libmansuffix__), +XrmPutResource(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmGetResource.man b/libX11/man/XrmGetResource.man index 06d467c34..4eff90ee1 100644 --- a/libX11/man/XrmGetResource.man +++ b/libX11/man/XrmGetResource.man @@ -318,9 +318,9 @@ entries that match using the character ``?''. An entry preceded by a tight binding takes precedence over entries preceded by a loose binding. .SH "SEE ALSO" -XrmInitialize(3X11), -XrmMergeDatabases(3X11), -XrmPutResource(3X11), -XrmUniqueQuark(3X11) +XrmInitialize(__libmansuffix__), +XrmMergeDatabases(__libmansuffix__), +XrmPutResource(__libmansuffix__), +XrmUniqueQuark(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmInitialize.man b/libX11/man/XrmInitialize.man index c481bef09..3f47861f5 100644 --- a/libX11/man/XrmInitialize.man +++ b/libX11/man/XrmInitialize.man @@ -257,9 +257,9 @@ typedef struct { } XrmOptionDescRec, *XrmOptionDescList; .De .SH "SEE ALSO" -XrmGetResource(3X11), -XrmMergeDatabases(3X11), -XrmPutResource(3X11), -XrmUniqueQuark(3X11) +XrmGetResource(__libmansuffix__), +XrmMergeDatabases(__libmansuffix__), +XrmPutResource(__libmansuffix__), +XrmUniqueQuark(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmMergeDatabases.man b/libX11/man/XrmMergeDatabases.man index e1dc75ad0..5480eb426 100644 --- a/libX11/man/XrmMergeDatabases.man +++ b/libX11/man/XrmMergeDatabases.man @@ -209,8 +209,8 @@ The database entries are merged without changing values or types, regardless of the locale of the database. The locale of the target database is not modified. .SH "SEE ALSO" -XrmGetResource(3X11), -XrmInitialize(3X11), -XrmPutResource(3X11) +XrmGetResource(__libmansuffix__), +XrmInitialize(__libmansuffix__), +XrmPutResource(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmPutResource.man b/libX11/man/XrmPutResource.man index e42fbf81e..55d699f80 100644 --- a/libX11/man/XrmPutResource.man +++ b/libX11/man/XrmPutResource.man @@ -245,9 +245,9 @@ is not in the Host Portable Character Encoding, the result is implementation-dependent. Note that comment lines are not stored. .SH "SEE ALSO" -XrmGetResource(3X11), -XrmInitialize(3X11), -XrmMergeDatabases(3X11), -XrmUniqueQuark(3X11) +XrmGetResource(__libmansuffix__), +XrmInitialize(__libmansuffix__), +XrmMergeDatabases(__libmansuffix__), +XrmUniqueQuark(__libmansuffix__) .br \fI\*(xL\fP diff --git a/libX11/man/XrmUniqueQuark.man b/libX11/man/XrmUniqueQuark.man index baaeac972..ea32c6a27 100644 --- a/libX11/man/XrmUniqueQuark.man +++ b/libX11/man/XrmUniqueQuark.man @@ -296,9 +296,9 @@ quarks a b c bindings loose tight loose .TE .SH "SEE ALSO" -XrmGetResource(3X11), -XrmInitialize(3X11), -XrmMergeDatabases(3X11), -XrmPutResource(3X11) +XrmGetResource(__libmansuffix__), +XrmInitialize(__libmansuffix__), +XrmMergeDatabases(__libmansuffix__), +XrmPutResource(__libmansuffix__) .LP \fI\*(xL\fP diff --git a/libX11/man/xkb/Makefile.am b/libX11/man/xkb/Makefile.am index 542baf297..a15932f4b 100644 --- a/libX11/man/xkb/Makefile.am +++ b/libX11/man/xkb/Makefile.am @@ -230,5 +230,5 @@ MANDEFS = -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ CPP_MAN_FLAGS = $(MANDEFS) $(EXTRAMANDEFS) .man.$(LIB_MAN_SUFFIX): - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ diff --git a/libX11/man/xkb/Makefile.in b/libX11/man/xkb/Makefile.in index d35914bde..a8639b91e 100644 --- a/libX11/man/xkb/Makefile.in +++ b/libX11/man/xkb/Makefile.in @@ -54,6 +54,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -84,6 +90,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -160,6 +167,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -474,6 +482,11 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; XORGRELSTRING = @PACKAGE_STRING@ XORGMANNAME = X Version 11 MANDEFS = -D__libmansuffix__=$(LIB_MAN_SUFFIX) \ @@ -692,10 +705,10 @@ uninstall-am: uninstall-libmanDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ .man.$(LIB_MAN_SUFFIX): - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_MAN_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/man/xkb/XkbActionCtrls.man b/libX11/man/xkb/XkbActionCtrls.man index 243619013..0bc6a7f6a 100644 --- a/libX11/man/xkb/XkbActionCtrls.man +++ b/libX11/man/xkb/XkbActionCtrls.man @@ -31,12 +31,9 @@ .SH NAME XkbActionCtrls \- Returns the ctrls fields of act converted to an unsigned int .SH SYNOPSIS -.B unsigned int XkbActionCtrls macro -( -.I act -) -.br - XkbCtrlsAction \fIact\fP\^; +.HP +.B unsigned int XkbActionCtrls +.BI "(\^XkbCtrlsAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddDeviceLedInfo.man b/libX11/man/xkb/XkbAddDeviceLedInfo.man index 90db51c51..0d8cc03d1 100644 --- a/libX11/man/xkb/XkbAddDeviceLedInfo.man +++ b/libX11/man/xkb/XkbAddDeviceLedInfo.man @@ -31,18 +31,11 @@ .SH NAME XkbAddDeviceLedInfo \- Initialize an XkbDeviceLedInfoRec structure .SH SYNOPSIS +.HP .B XkbDeviceLedInfoPtr XkbAddDeviceLedInfo -( -.I device_info, -.I led_class, -.I led_id -) -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - unsigned int \fIled_class\fP\^; -.br - unsigned int \fIled_id\fP\^; +.BI "(\^XkbDeviceInfoPtr " "device_info" "\^," +.BI "unsigned int " "led_class" "\^," +.BI "unsigned int " "led_id" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomColor.man b/libX11/man/xkb/XkbAddGeomColor.man index 4d6df3dc2..57d788104 100644 --- a/libX11/man/xkb/XkbAddGeomColor.man +++ b/libX11/man/xkb/XkbAddGeomColor.man @@ -31,18 +31,11 @@ XkbAddGeomColor \- Add one color name to an existing keyboard geometry description .SH SYNOPSIS +.HP .B XkbColorPtr XkbAddGeomColor -( -.I geom, -.I spec, -.I pixel -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - char * \fIspec\fP\^; -.br - unsigned int \fIpixel\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "char *" "spec" "\^," +.BI "unsigned int " "pixel" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomDoodad.man b/libX11/man/xkb/XkbAddGeomDoodad.man index f6be93cb1..cdc731b4e 100644 --- a/libX11/man/xkb/XkbAddGeomDoodad.man +++ b/libX11/man/xkb/XkbAddGeomDoodad.man @@ -31,18 +31,11 @@ XkbAddGeomDoodad \- Add one doodad to a section of a keyboard geometry or to the top-level geometry .SH SYNOPSIS +.HP .B XkbDoodadPtr XkbAddGeomDoodad -( -.I geom , -.I section, -.I name -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - XkbSectionPtr \fIsection\fP\^; -.br - Atom \fIname\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "XkbSectionPtr " "section" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomKey.man b/libX11/man/xkb/XkbAddGeomKey.man index a4040dcbb..c16944ef1 100644 --- a/libX11/man/xkb/XkbAddGeomKey.man +++ b/libX11/man/xkb/XkbAddGeomKey.man @@ -30,12 +30,9 @@ .SH NAME XkbAddGeomKey \- Add one key at the end of an existing row of keys .SH SYNOPSIS +.HP .B XkbKeyPtr XkbAddGeomKey -( -.I row -) -.br - XkbRowPtr \fIrow\fP\^; +.BI "(\^XkbRowPtr " "row" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomKeyAlias.man b/libX11/man/xkb/XkbAddGeomKeyAlias.man index 09997324a..e3de21cec 100644 --- a/libX11/man/xkb/XkbAddGeomKeyAlias.man +++ b/libX11/man/xkb/XkbAddGeomKeyAlias.man @@ -31,18 +31,11 @@ XkbAddGeomKeyAlias \- Add one key alias to an existing keyboard geometry description .SH SYNOPSIS +.HP .B XkbKeyAliasPtr XkbAddGeomKeyAlias -( -.I geom, -.I alias, -.I real -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - char * \fIalias\fP\^; -.br - char * \fIreal\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "char *" "alias" "\^," +.BI "char *" "real" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomOutline.man b/libX11/man/xkb/XkbAddGeomOutline.man index 521614ef4..28d9db33d 100644 --- a/libX11/man/xkb/XkbAddGeomOutline.man +++ b/libX11/man/xkb/XkbAddGeomOutline.man @@ -30,15 +30,10 @@ .SH NAME XkbAddGeomOutline \- Add one outline to an existing shape .SH SYNOPSIS +.HP .B XkbOutlinePtr XkbAddGeomOutline -( -.I shape, -.I sz_points -) -.br - XkbShapePtr \fIshape\fP\^; -.br - int \fIsz_points\fP\^; +.BI "(\^XkbShapePtr " "shape" "\^," +.BI "int " "sz_points" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomOverlay.man b/libX11/man/xkb/XkbAddGeomOverlay.man index 40cb85418..61dd37712 100644 --- a/libX11/man/xkb/XkbAddGeomOverlay.man +++ b/libX11/man/xkb/XkbAddGeomOverlay.man @@ -30,18 +30,11 @@ .SH NAME XkbAddGeomOverlay \- Add one overlay to a section .SH SYNOPSIS +.HP .B XkbOverlayPtr XkbAddGeomOverlay -( -.I section, -.I name, -.I sz_rows -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - Atom \fIname\fP\^; -.br - int \fIsz_rows\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "Atom " "name" "\^," +.BI "int " "sz_rows" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomOverlayKey.man b/libX11/man/xkb/XkbAddGeomOverlayKey.man index dfb8a4225..3fc62d427 100644 --- a/libX11/man/xkb/XkbAddGeomOverlayKey.man +++ b/libX11/man/xkb/XkbAddGeomOverlayKey.man @@ -30,18 +30,11 @@ .SH NAME XkbAddGeomOverlayKey \- Add a key to an existing overlay row .SH SYNOPSIS +.HP .B XkbOverlayKeyPtr XkbAddGeomOverlayKey -( -.I overlay, -.I row, -.I under -) -.br - XkbOverlayPtr \fIoverlay\fP\^; -.br - XkbRowPtr \fIrow\fP\^; -.br - char * \fIunder\fP\^; +.BI "(\^XkbOverlayPtr " "overlay" "\^," +.BI "XkbRowPtr " "row" "\^," +.BI "char *" "under" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomOverlayRow.man b/libX11/man/xkb/XkbAddGeomOverlayRow.man index c6866fa03..7bd85a6e2 100644 --- a/libX11/man/xkb/XkbAddGeomOverlayRow.man +++ b/libX11/man/xkb/XkbAddGeomOverlayRow.man @@ -30,18 +30,11 @@ .SH NAME XkbAddGeomOverlayRow \- Add a row to an existing overlay .SH SYNOPSIS +.HP .B XkbOverlayRowPtr XkbAddGeomOverlayRow -( -.I overlay, -.I row_under, -.I sz_keys -) -.br - XkbOverlayPtr \fIoverlay\fP\^; -.br - XkbRowPtr \fIrow_under\fP\^; -.br - int \fIsz_keys\fP\^; +.BI "(\^XkbOverlayPtr " "overlay" "\^," +.BI "XkbRowPtr " "row_under" "\^," +.BI "int " "sz_keys" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomProperty.man b/libX11/man/xkb/XkbAddGeomProperty.man index f80b7715d..28ac451b1 100644 --- a/libX11/man/xkb/XkbAddGeomProperty.man +++ b/libX11/man/xkb/XkbAddGeomProperty.man @@ -31,18 +31,11 @@ XkbAddGeomProperty \- Add one property to an existing keyboard geometry description .SH SYNOPSIS +.HP .B XkbPropertyPtr XkbAddGeomProperty -( -.I geom, -.I name, -.I value -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - char * \fIname\fP\^; -.br - char * \fIvalue\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "char *" "name" "\^," +.BI "char *" "value" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomRow.man b/libX11/man/xkb/XkbAddGeomRow.man index a74bddb98..166c2cbab 100644 --- a/libX11/man/xkb/XkbAddGeomRow.man +++ b/libX11/man/xkb/XkbAddGeomRow.man @@ -30,15 +30,10 @@ .SH NAME XkbAddGeomRow \- Add a row to a section .SH SYNOPSIS +.HP .B XkbRowPtr XkbAddGeomRow -( -.I section, -.I sz_keys -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fIsz_keys\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "sz_keys" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomSection.man b/libX11/man/xkb/XkbAddGeomSection.man index 96df43068..1ffc56de8 100644 --- a/libX11/man/xkb/XkbAddGeomSection.man +++ b/libX11/man/xkb/XkbAddGeomSection.man @@ -30,24 +30,13 @@ .SH NAME XkbAddGeomSection \- Add one section to an existing keyboard geometry .SH SYNOPSIS +.HP .B XkbSectionPtr XkbAddGeomSection -( -.I geom, -.I name, -.I sz_rows, -.I sz_doodads, -.I sz_overlays -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - Atom \fIname\fP\^; -.br - int \fIsz_rows\fP\^; -.br - int \fIsz_doodads\fP\^; -.br - int \fIsz_overlays\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "Atom " "name" "\^," +.BI "int " "sz_rows" "\^," +.BI "int " "sz_doodads" "\^," +.BI "int " "sz_overlays" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddGeomShape.man b/libX11/man/xkb/XkbAddGeomShape.man index 8743aa537..a3ec9e89f 100644 --- a/libX11/man/xkb/XkbAddGeomShape.man +++ b/libX11/man/xkb/XkbAddGeomShape.man @@ -30,18 +30,11 @@ .SH NAME XkbAddGeomShape \- Add a shape to a keyboard geometry .SH SYNOPSIS +.HP .B XkbShapePtr XkbAddGeomShape -( -.I geom, -.I name, -.I sz_outlines -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - Atom \fIname\fP\^; -.br - int \fIsz_outlines\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "Atom " "name" "\^," +.BI "int " "sz_outlines" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAddSymInterpret.man b/libX11/man/xkb/XkbAddSymInterpret.man index b9aa4f63c..f851d3d9d 100644 --- a/libX11/man/xkb/XkbAddSymInterpret.man +++ b/libX11/man/xkb/XkbAddSymInterpret.man @@ -31,21 +31,12 @@ XkbAddSymInterpret \- Add a symbol interpretation to the list of symbol interpretations in an XkbCompatRec .SH SYNOPSIS +.HP .B XkbSymInterpretPtr XkbAddSymInterpret -( -.I xkb, -.I si, -.I updateMap, -.I changes -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbSymInterpretPtr \fIsi\fP\^; -.br - Bool \fIupdateMap\fP\^; -.br - XkbChangesPtr \fIchanges\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "XkbSymInterpretPtr " "si" "\^," +.BI "Bool " "updateMap" "\^," +.BI "XkbChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocClientMap.man b/libX11/man/xkb/XkbAllocClientMap.man index e371753b9..280608b4d 100644 --- a/libX11/man/xkb/XkbAllocClientMap.man +++ b/libX11/man/xkb/XkbAllocClientMap.man @@ -32,18 +32,11 @@ XkbAllocClientMap \- Allocate and initialize an empty client map description record .SH SYNOPSIS +.HP .B Status XkbAllocClientMap -( -.I xkb, -.I which, -.I type_count -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fItype_count\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "type_count" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocCompatMap.man b/libX11/man/xkb/XkbAllocCompatMap.man index 82336976b..1b819747e 100644 --- a/libX11/man/xkb/XkbAllocCompatMap.man +++ b/libX11/man/xkb/XkbAllocCompatMap.man @@ -31,18 +31,11 @@ .SH NAME XkbAllocCompatMap \- Allocate a new compatibility map if you do not already have one available .SH SYNOPSIS +.HP .B Status XkbAllocCompatMap -( -.I xkb, -.I which, -.I num_si -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fInum_si\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "num_si" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocControls.man b/libX11/man/xkb/XkbAllocControls.man index d62ce9b94..5038721b6 100644 --- a/libX11/man/xkb/XkbAllocControls.man +++ b/libX11/man/xkb/XkbAllocControls.man @@ -31,15 +31,10 @@ .SH NAME XkbAllocControls \- Allocates an XkbControlsRec structure in the XkbDescRec .SH SYNOPSIS +.HP .B Status XkbAllocControls -( -.I xkb, -.I which -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocDeviceInfo.man b/libX11/man/xkb/XkbAllocDeviceInfo.man index c0f60426b..0aea7a6b0 100644 --- a/libX11/man/xkb/XkbAllocDeviceInfo.man +++ b/libX11/man/xkb/XkbAllocDeviceInfo.man @@ -31,18 +31,11 @@ .SH NAME XkbAllocDeviceInfo \- Obtain an XkbDeviceInfoRec structure .SH SYNOPSIS +.HP .B XkbDeviceInfoPtr XkbAllocDeviceInfo -( -.I device_spec, -.I n_buttons, -.I sz_leds -) -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIn_buttons\fP\^; -.br - unsigned int \fIsz_leds\fP\^; +.BI "(\^unsigned int " "device_spec" "\^," +.BI "unsigned int " "n_buttons" "\^," +.BI "unsigned int " "sz_leds" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocDeviceLedInfo.man b/libX11/man/xkb/XkbAllocDeviceLedInfo.man index 180dd1d8a..6dbe10399 100644 --- a/libX11/man/xkb/XkbAllocDeviceLedInfo.man +++ b/libX11/man/xkb/XkbAllocDeviceLedInfo.man @@ -31,15 +31,10 @@ .SH NAME XkbAllocDeviceLedInfo \- Obtain an XkbDeviceLedInfoRec structure .SH SYNOPSIS +.HP .B Status XkbAllocDeviceLedInfo -( -.I device_info, -.I num_needed -) -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbDeviceInfoPtr " "device_info" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomColors.man b/libX11/man/xkb/XkbAllocGeomColors.man index 9efe169da..b89ea3619 100644 --- a/libX11/man/xkb/XkbAllocGeomColors.man +++ b/libX11/man/xkb/XkbAllocGeomColors.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomColors \- Allocate geometry colors .SH SYNOPSIS +.HP .B Status XkbAllocGeomColors -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomDoodads.man b/libX11/man/xkb/XkbAllocGeomDoodads.man index f2d2fa383..fca81f9c3 100644 --- a/libX11/man/xkb/XkbAllocGeomDoodads.man +++ b/libX11/man/xkb/XkbAllocGeomDoodads.man @@ -31,15 +31,10 @@ .SH NAME XkbAllocGeomDoodads \- Allocate doodads that are global to a keyboard geometry .SH SYNOPSIS +.HP .B Status XkbAllocGeomDoodads -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomKeyAliases.man b/libX11/man/xkb/XkbAllocGeomKeyAliases.man index 381bed1ae..49a330a08 100644 --- a/libX11/man/xkb/XkbAllocGeomKeyAliases.man +++ b/libX11/man/xkb/XkbAllocGeomKeyAliases.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomKeyAliases \- Allocate geometry key aliases .SH SYNOPSIS +.HP .B Status XkbAllocGeomKeyAliases -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomKeys.man b/libX11/man/xkb/XkbAllocGeomKeys.man index dcd5d786f..675178533 100644 --- a/libX11/man/xkb/XkbAllocGeomKeys.man +++ b/libX11/man/xkb/XkbAllocGeomKeys.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomKeys \- Allocate space for an arbitrary number of keys to a row .SH SYNOPSIS +.HP .B Status XkbAllocGeomKeys -( -.I row, -.I num_needed -) -.br - XkbRowPtr \fIrow\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbRowPtr " "row" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomOutlines.man b/libX11/man/xkb/XkbAllocGeomOutlines.man index 779829175..3cd71f913 100644 --- a/libX11/man/xkb/XkbAllocGeomOutlines.man +++ b/libX11/man/xkb/XkbAllocGeomOutlines.man @@ -31,15 +31,10 @@ XkbAllocGeomOutlines \- Allocate space for an arbitrary number of outlines to a shape .SH SYNOPSIS +.HP .B Status XkbAllocGeomOutlines -( -.I shape, -.I num_needed -) -.br - XkbShapePtr \fIshape\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbShapePtr " "shape" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomOverlayKey.man b/libX11/man/xkb/XkbAllocGeomOverlayKey.man index f33dd366c..541c14d71 100644 --- a/libX11/man/xkb/XkbAllocGeomOverlayKey.man +++ b/libX11/man/xkb/XkbAllocGeomOverlayKey.man @@ -31,15 +31,10 @@ .SH NAME XkbAllocGeomOverlayKeys \- Allocate keys in an overlay row .SH SYNOPSIS +.HP .B Status XkbAllocGeomOverlayKeys -( -.I row, -.I num_needed -) -.br - XkbRowPtr \fIrow\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbOverlayRowPtr " "row" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomOverlayRows.man b/libX11/man/xkb/XkbAllocGeomOverlayRows.man index 8b18092f7..c3e5caf94 100644 --- a/libX11/man/xkb/XkbAllocGeomOverlayRows.man +++ b/libX11/man/xkb/XkbAllocGeomOverlayRows.man @@ -26,19 +26,14 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbAllocGeomOverlayRows 3Xkb "Release 6.1" "X Version 11" "XKBLIB FUNCTION" +.TH XkbAllocGeomOverlayRows __libmansuffix__ __xorgversion__ "XKB FUNCTIONS" .SH NAME XkbAllocGeomOverlayRows \- Allocate rows in a overlay .SH SYNOPSIS +.HP .B Status XkbAllocGeomOverlayRows -( -.I overlay, -.I num_needed -) -.br - XkbSectionPtr \fIoverlay\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbOverlayPtr " "overlay" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomOverlays.man b/libX11/man/xkb/XkbAllocGeomOverlays.man index 6320f1c2d..1165fe427 100644 --- a/libX11/man/xkb/XkbAllocGeomOverlays.man +++ b/libX11/man/xkb/XkbAllocGeomOverlays.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomOverlays \- Allocate overlays in a section .SH SYNOPSIS +.HP .B Status XkbAllocGeomOverlays -( -.I section, -.I num_needed -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomPoints.man b/libX11/man/xkb/XkbAllocGeomPoints.man index f9e8cd0a2..752358f96 100644 --- a/libX11/man/xkb/XkbAllocGeomPoints.man +++ b/libX11/man/xkb/XkbAllocGeomPoints.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomPoints \- Allocate points in an outline .SH SYNOPSIS +.HP .B Status XkbAllocGeomPoints -( -.I outline, -.I num_needed -) -.br - XkbOutlinePtr \fIoutline\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbOutlinePtr " "outline" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomProps.man b/libX11/man/xkb/XkbAllocGeomProps.man index 56c086e19..6eaf7d32c 100644 --- a/libX11/man/xkb/XkbAllocGeomProps.man +++ b/libX11/man/xkb/XkbAllocGeomProps.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomProps \- Allocate geometry properties .SH SYNOPSIS +.HP .B Status XkbAllocGeomProps -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomRows.man b/libX11/man/xkb/XkbAllocGeomRows.man index daa87114f..7c79bf994 100644 --- a/libX11/man/xkb/XkbAllocGeomRows.man +++ b/libX11/man/xkb/XkbAllocGeomRows.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomRows \- Allocate rows in a section .SH SYNOPSIS +.HP .B Status XkbAllocGeomRows -( -.I section, -.I num_needed -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomSectionDoodads.man b/libX11/man/xkb/XkbAllocGeomSectionDoodads.man index 2f0e7847d..aacd50d45 100644 --- a/libX11/man/xkb/XkbAllocGeomSectionDoodads.man +++ b/libX11/man/xkb/XkbAllocGeomSectionDoodads.man @@ -27,20 +27,14 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbAllocGeomSectionDoodads 3Xkb "Release 6.1" "X Version 11" "XKBLIB -FUNCTION" +.TH XkbAllocGeomSectionDoodads __libmansuffix__ __xorgversion__ "XKB FUNCTIONS" .SH NAME XkbAllocGeomSectionDoodads \- Allocate doodads that are specific to a section .SH SYNOPSIS +.HP .B Status XkbAllocGeomSectionDoodads -( -.I section, -.I num_needed -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomSections.man b/libX11/man/xkb/XkbAllocGeomSections.man index 7eb8fad46..1e9fcbcb5 100644 --- a/libX11/man/xkb/XkbAllocGeomSections.man +++ b/libX11/man/xkb/XkbAllocGeomSections.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomSections \- Allocate geometry sections .SH SYNOPSIS +.HP .B Status XkbAllocGeomSections -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeomShapes.man b/libX11/man/xkb/XkbAllocGeomShapes.man index e197636a3..82a9a26c1 100644 --- a/libX11/man/xkb/XkbAllocGeomShapes.man +++ b/libX11/man/xkb/XkbAllocGeomShapes.man @@ -30,15 +30,10 @@ .SH NAME XkbAllocGeomShapes \- Allocate space for an arbitrary number of geometry shapes .SH SYNOPSIS +.HP .B Status XkbAllocGeomShapes -( -.I geom, -.I num_needed -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fInum_needed\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "num_needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocGeometry.man b/libX11/man/xkb/XkbAllocGeometry.man index 7de54d772..651bf350b 100644 --- a/libX11/man/xkb/XkbAllocGeometry.man +++ b/libX11/man/xkb/XkbAllocGeometry.man @@ -31,15 +31,10 @@ .SH NAME XkbAllocGeometry \- Allocate an entire geometry .SH SYNOPSIS +.HP .B Status XkbAllocGeometry -( -.I xkb, -.I sizes -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbGeometrySizesPtr \fIsizes\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "XkbGeometrySizesPtr " "sizes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocIndicatorMaps.man b/libX11/man/xkb/XkbAllocIndicatorMaps.man index f64cc0520..8cef40042 100644 --- a/libX11/man/xkb/XkbAllocIndicatorMaps.man +++ b/libX11/man/xkb/XkbAllocIndicatorMaps.man @@ -32,12 +32,9 @@ XkbAllocIndicatorMaps \- Allocates, directly, the .I indicators member of the keyboard description record .SH SYNOPSIS +.HP .B Status XkbAllocIndicatorMaps -( -.I xkb -) -.br - variable_type *\fIxkb\fP\^; +.BI "(\^variable_type *" "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocKeyboard.man b/libX11/man/xkb/XkbAllocKeyboard.man index d1c38cdb8..0ee7599fc 100644 --- a/libX11/man/xkb/XkbAllocKeyboard.man +++ b/libX11/man/xkb/XkbAllocKeyboard.man @@ -30,10 +30,9 @@ .SH NAME XkbAllocKeyboard \- Creates a keyboard description from scratch .SH SYNOPSIS +.HP .B XkbDescRec XkbAllocKeyboard -( -.I void -) +.BI "(\^void\^);" .if n .ti +5n .if t .ti +.5i .SH DESCRIPTION diff --git a/libX11/man/xkb/XkbAllocNames.man b/libX11/man/xkb/XkbAllocNames.man index eec606b5f..3cd6c7250 100644 --- a/libX11/man/xkb/XkbAllocNames.man +++ b/libX11/man/xkb/XkbAllocNames.man @@ -31,21 +31,12 @@ .SH NAME XkbAllocNames \- Allocate symbolic names structures .SH SYNOPSIS +.HP .B Status XkbAllocNames -( -.I xkb, -.I which, -.I num_rg, -.I num_key_aliases -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - int \fInum_rg\fP\^; -.br - int \fInum_key_aliases\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "int " "num_rg" "\^," +.BI "int " "num_key_aliases" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbAllocServerMap.man b/libX11/man/xkb/XkbAllocServerMap.man index 9994b35e5..eb9bcc399 100644 --- a/libX11/man/xkb/XkbAllocServerMap.man +++ b/libX11/man/xkb/XkbAllocServerMap.man @@ -31,18 +31,11 @@ .SH NAME XkbAllocServerMap \- Allocate and initialize an empty server map description record .SH SYNOPSIS +.HP .B Status XkbAllocServerMap -( -.I xkb, -.I which, -.I count_acts -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fIcount_acts\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "count_acts" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbApplyCompatMapToKey.man b/libX11/man/xkb/XkbApplyCompatMapToKey.man index 921496077..af771cef0 100644 --- a/libX11/man/xkb/XkbApplyCompatMapToKey.man +++ b/libX11/man/xkb/XkbApplyCompatMapToKey.man @@ -32,18 +32,11 @@ XkbApplyCompatMapToKey \- Apply the new compatibility mapping to an individual key to get its semantics updated .SH SYNOPSIS +.HP .B Bool XkbApplyCompatMapToKey -( -.I xkb, -.I key, -.I changes -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkey\fP\^; -.br - XkbChangesPtr \fIchanges\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "key" "\^," +.BI "XkbChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbBell.man b/libX11/man/xkb/XkbBell.man index 2a8a0e1fc..6ee2a16c7 100644 --- a/libX11/man/xkb/XkbBell.man +++ b/libX11/man/xkb/XkbBell.man @@ -31,21 +31,12 @@ .SH NAME XkbBell \- Rings the bell on the default keyboard .SH SYNOPSIS +.HP .B Bool XkbBell -( -.I display, -.I window, -.I percent, -.I name -) -.br - Display *\fIdisplay\fP\^; -.br - Window \fIwindow\fP\^; -.br - int \fIpercent\fP\^; -.br - Atom \fIname\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Window " "window" "\^," +.BI "int " "percent" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -330,7 +321,7 @@ receives a bell event, use the window ID in the XkbBellNotifyEvent, if present. .SH "SEE ALSO" -.BR XBell (3X11), +.BR XBell (__libmansuffix__), .BR XkbBellNotify (__libmansuffix__), .BR XkbChangeEnabledControls (__libmansuffix__), .BR XkbDeviceBell (__libmansuffix__), diff --git a/libX11/man/xkb/XkbBellEvent.man b/libX11/man/xkb/XkbBellEvent.man index 4b4edc145..9fd6fb74a 100644 --- a/libX11/man/xkb/XkbBellEvent.man +++ b/libX11/man/xkb/XkbBellEvent.man @@ -32,21 +32,12 @@ XkbBellEvent \- Provides a function that initiates a bell event for the keyboard without ringing the bell .SH SYNOPSIS +.HP .B Bool XkbBellEvent -( -.I display, -.I window, -.I percent, -.I name -) -.br - Display *\fI display \fP\^; -.br - Window \fI window \fP\^; -.br - int \fI percent \fP\^; -.br - Atom \fI name \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Window " "window" "\^," +.BI "int " "percent" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeControls.man b/libX11/man/xkb/XkbChangeControls.man index e44140079..5a2800b24 100644 --- a/libX11/man/xkb/XkbChangeControls.man +++ b/libX11/man/xkb/XkbChangeControls.man @@ -33,18 +33,11 @@ XkbChangeControls \- Provides a flexible method for updating the controls in a server to match those in the changed keyboard description .SH SYNOPSIS +.HP .B Bool XkbChangeControls -( -.I dpy, -.I xkb, -.I changes -) -.br - Display *\fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbControlsChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbControlsChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeDeviceInfo.man b/libX11/man/xkb/XkbChangeDeviceInfo.man index e427ff738..7d78de399 100644 --- a/libX11/man/xkb/XkbChangeDeviceInfo.man +++ b/libX11/man/xkb/XkbChangeDeviceInfo.man @@ -32,18 +32,11 @@ XkbChangeDeviceInfo \- Update the server's description of a device with the changes noted in an XkbDeviceChangesRec .SH SYNOPSIS +.HP .B Bool XkbChangeDeviceInfo -( -.I dpy, -.I device_info, -.I changes -) -.br - Display * \fIdpy\fP\^; -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - XkbDeviceChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDeviceInfoPtr " "device_info" "\^," +.BI "XkbDeviceChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeEnabledControls.man b/libX11/man/xkb/XkbChangeEnabledControls.man index 5470a15e8..cd2058b39 100644 --- a/libX11/man/xkb/XkbChangeEnabledControls.man +++ b/libX11/man/xkb/XkbChangeEnabledControls.man @@ -31,21 +31,12 @@ .SH NAME XkbChangeEnabledControls \- Manipulates the EnabledControls control .SH SYNOPSIS +.HP .B Bool XkbChangeEnabledControls -( -.I dpy, -.I device_spec, -.I mask, -.I values -) -.br - Display *\fI dpy \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int \fI mask \fP\^; -.br - unsigned int \fI values \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "mask" "\^," +.BI "unsigned int " "values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeIndicators.man b/libX11/man/xkb/XkbChangeIndicators.man index a0604ced4..5c023fd5c 100644 --- a/libX11/man/xkb/XkbChangeIndicators.man +++ b/libX11/man/xkb/XkbChangeIndicators.man @@ -31,21 +31,12 @@ XkbChangeIndicators \- Changes indicator maps or state without passing the entire keyboard description .SH SYNOPSIS +.HP .B Bool XkbChangeIndicators -( -.I dpy, -.I xkb, -.I changes, -.I state -) -.br - Display *\fI dpy \fP\^; -.br - XkbDescPtr \fI xkb \fP\^; -.br - XkbIndicatorChangesPtr \fI changes \fP\^; -.br - unsigned int \fI state \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbIndicatorChangesPtr " "changes" "\^," +.BI "unsigned int " "state" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeMap.man b/libX11/man/xkb/XkbChangeMap.man index e65a5ec5a..3b2c39bed 100644 --- a/libX11/man/xkb/XkbChangeMap.man +++ b/libX11/man/xkb/XkbChangeMap.man @@ -33,18 +33,11 @@ XkbChangeMap \- Update only partial components of a keyboard description, modify the appropriate fields in the server and map components of a local copy of the keyboard description .SH SYNOPSIS +.HP .B Bool XkbChangeMap -( -.I dpy, -.I xkb, -.I changes -) -.br - Display * \fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbMapChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbMapChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeNames.man b/libX11/man/xkb/XkbChangeNames.man index 75f815d6d..b647c63e1 100644 --- a/libX11/man/xkb/XkbChangeNames.man +++ b/libX11/man/xkb/XkbChangeNames.man @@ -31,18 +31,11 @@ .SH NAME XkbChangeNames \- _summary-line_ .SH SYNOPSIS +.HP .B Bool XkbChangeNames -( -.I dpy, -.I which, -.I Xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIXkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "Xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbChangeTypesOfKey.man b/libX11/man/xkb/XkbChangeTypesOfKey.man index ce2ef46a9..9118b4584 100644 --- a/libX11/man/xkb/XkbChangeTypesOfKey.man +++ b/libX11/man/xkb/XkbChangeTypesOfKey.man @@ -31,27 +31,14 @@ .SH NAME XkbChangeTypesOfKey \- Change the number of groups and the types bound to a key .SH SYNOPSIS +.HP .B Status XkbChangeTypesOfKey -( -.I xkb, -.I key, -.I n_groups, -.I groups, -.I new_types_in, -.I p_changes -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - int \fIkey\fP\^; -.br - int \fIn_groups\fP\^; -.br - unsigned int \fIgroups\fP\^; -.br - int * \fInew_types_in\fP\^; -.br - XkbMapChangesPtr \fIp_changes\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "int " "key" "\^," +.BI "int " "n_groups" "\^," +.BI "unsigned int " "groups" "\^," +.BI "int *" "new_types_in" "\^," +.BI "XkbMapChangesPtr " "p_changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbComputeRowBounds.man b/libX11/man/xkb/XkbComputeRowBounds.man index 523505e0b..a2d5fd2f4 100644 --- a/libX11/man/xkb/XkbComputeRowBounds.man +++ b/libX11/man/xkb/XkbComputeRowBounds.man @@ -30,18 +30,11 @@ .SH NAME XkbComputeRowBounds \- Update the bounding box of a row .SH SYNOPSIS +.HP .B Bool XkbComputeRowBounds -( -.I geom, -.I section, -.I row -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - XkbSectionPtr \fIsection\fP\^; -.br - XkbRowPtr \fIrow\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "XkbSectionPtr " "section" "\^," +.BI "XkbRowPtr " "row" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbComputeSectionBounds.man b/libX11/man/xkb/XkbComputeSectionBounds.man index 0ba9348ad..081e01765 100644 --- a/libX11/man/xkb/XkbComputeSectionBounds.man +++ b/libX11/man/xkb/XkbComputeSectionBounds.man @@ -30,15 +30,10 @@ .SH NAME XkbComputeSectionBounds \- Update the bounding box of a section .SH SYNOPSIS +.HP .B Bool XkbComputeSectionBounds -( -.I geom, -.I section -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - XkbSectionPtr \fIsection\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "XkbSectionPtr " "section" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbComputeShapeBounds.man b/libX11/man/xkb/XkbComputeShapeBounds.man index c77093d80..65321450e 100644 --- a/libX11/man/xkb/XkbComputeShapeBounds.man +++ b/libX11/man/xkb/XkbComputeShapeBounds.man @@ -30,12 +30,9 @@ .SH NAME XkbComputeShapeBounds \- Updates the bounding box of a shape .SH SYNOPSIS +.HP .B Bool XkbComputeShapeBounds -( -.I shape -) -.br - XkbShapePtr \fIshape\fP\^; +.BI "(\^XkbShapePtr " "shape" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbComputeShapeTop.man b/libX11/man/xkb/XkbComputeShapeTop.man index db71a7e4a..12ef0c2cb 100644 --- a/libX11/man/xkb/XkbComputeShapeTop.man +++ b/libX11/man/xkb/XkbComputeShapeTop.man @@ -30,15 +30,10 @@ .SH NAME XkbComputeShapeTop \- Determines the bounding box of the top surface of a shape .SH SYNOPSIS +.HP .B Bool XkbComputeShapeTop -( -.I shape, -.I bounds_rtrn -) -.br - XkbShapePtr \fIshape\fP\^; -.br - XkbBoundsPtr \fIbounds_rtrn\fP\^; +.BI "(\^XkbShapePtr " "shape" "\^," +.BI "XkbBoundsPtr " "bounds_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbCopyKeyType.man b/libX11/man/xkb/XkbCopyKeyType.man index 36967046a..d3b6cae69 100644 --- a/libX11/man/xkb/XkbCopyKeyType.man +++ b/libX11/man/xkb/XkbCopyKeyType.man @@ -30,15 +30,10 @@ .SH NAME XkbCopyKeyType \- Copy one XkbKeyTypeRec structures .SH SYNOPSIS +.HP .B Status XkbCopyKeyType -( -.I from, -.I into -) -.br - XkbKeyTypePtr \fIfrom\fP\^; -.br - XkbKeyTypePtr \fIinto\fP\^; +.BI "(\^XkbKeyTypePtr " "from" "\^," +.BI "XkbKeyTypePtr " "into" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbCopyKeyTypes.man b/libX11/man/xkb/XkbCopyKeyTypes.man index abf0f7e1d..acabde9d6 100644 --- a/libX11/man/xkb/XkbCopyKeyTypes.man +++ b/libX11/man/xkb/XkbCopyKeyTypes.man @@ -30,18 +30,11 @@ .SH NAME XkbCopyKeyTypes \- Copy more than one XkbKeyTypeRec structure .SH SYNOPSIS +.HP .B Status XkbCopyKeyTypes -( -.I from, -.I into, -.I num_types -) -.br - XkbKeyTypePtr \fIfrom\fP\^; -.br - XkbKeyTypePtr \fIinto\fP\^; -.br - int \fInum_types\fP\^; +.BI "(\^XkbKeyTypePtr " "from" "\^," +.BI "XkbKeyTypePtr " "into" "\^," +.BI "int " "num_types" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbDeviceBell.man b/libX11/man/xkb/XkbDeviceBell.man index d5d05cdea..f11dd394f 100644 --- a/libX11/man/xkb/XkbDeviceBell.man +++ b/libX11/man/xkb/XkbDeviceBell.man @@ -31,30 +31,15 @@ .SH NAME XkbDeviceBell \- Rings the bell on an X input extension device or the default keyboard .SH SYNOPSIS +.HP .B Bool XkbDeviceBell -( -.I display, -.I window, -.I device_spec, -.I bell_class, -.I bell_id, -.I percent, -.I name -) -.br - Display *\fI display \fP\^; -.br - Window \fI window \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int \fI bell_class \fP\^; -.br - unsigned int \fI bell_id \fP\^; -.br - int \fI percent \fP\^; -.br - Atom \fI name \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Window " "window" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "bell_class" "\^," +.BI "unsigned int " "bell_id" "\^," +.BI "int " "percent" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -302,7 +287,7 @@ If your application needs to generate visual bell feedback on the screen when it a bell event, use the window ID in the XkbBellNotifyEvent, if present. .SH "SEE ALSO" -.BR XBell (3X11), +.BR XBell (__libmansuffix__), .BR XkbBellNotify (__libmansuffix__), .BR XkbChangeEnabledControls (__libmansuffix__), .BR XkbDeviceBell (__libmansuffix__), diff --git a/libX11/man/xkb/XkbDeviceBellEvent.man b/libX11/man/xkb/XkbDeviceBellEvent.man index a28a868f9..cf797890b 100644 --- a/libX11/man/xkb/XkbDeviceBellEvent.man +++ b/libX11/man/xkb/XkbDeviceBellEvent.man @@ -32,30 +32,15 @@ XkbDeviceBellEvent \- Creates a bell event for an X input extension device or for the keyboard, without ringing the corresponding bell .SH SYNOPSIS +.HP .B Bool XkbDeviceBellEvent -( -.I display, -.I window, -.I device_spec, -.I bell_class, -.I bell_id, -.I percent, -.I name -) -.br - Display *\fI display \fP\^; -.br - Window \fI window \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int \fI bell_class \fP\^; -.br - unsigned int \fI bell_id \fP\^; -.br - int \fI percent \fP\^; -.br - Atom \fI name \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Window " "window" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "bell_class" "\^," +.BI "unsigned int " "bell_id" "\^," +.BI "int " "percent" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -330,7 +315,7 @@ receives a bell event, use the window ID in the XkbBellNotifyEvent, if present. .SH "SEE ALSO" -.BR XBell (3X11), +.BR XBell (__libmansuffix__), .BR XkbBellNotify (__libmansuffix__), .BR XkbChangeEnabledControls (__libmansuffix__), .BR XkbDeviceBell (__libmansuffix__), diff --git a/libX11/man/xkb/XkbFindOverlayForKey.man b/libX11/man/xkb/XkbFindOverlayForKey.man index 783fddf12..0ce65f2b5 100644 --- a/libX11/man/xkb/XkbFindOverlayForKey.man +++ b/libX11/man/xkb/XkbFindOverlayForKey.man @@ -31,18 +31,11 @@ XkbFindOverlayForKey \- Find the alternate name by using the primary name for a key that is part of an overlay .SH SYNOPSIS +.HP .B char * XkbFindOverlayForKey -( -.I geom, -.I section, -.I under -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - XkbSectionPtr \fIsection\fP\^; -.br - char * \fIunder\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "XkbSectionPtr " "section" "\^," +.BI "char *" "under" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbForceBell.man b/libX11/man/xkb/XkbForceBell.man index b149974a2..24297af18 100644 --- a/libX11/man/xkb/XkbForceBell.man +++ b/libX11/man/xkb/XkbForceBell.man @@ -32,15 +32,10 @@ XkbForceBell \- Overrides user preference settings for audible bells to ring the bell on the default keyboard .SH SYNOPSIS +.HP .B Bool XkbForceBell -( -.I display, -.I percent -) -.br - Display *\fI display \fP\^; -.br - int \fI percent \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "int " "percent" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -318,7 +313,7 @@ receives a bell event, use the window ID in the XkbBellNotifyEvent, if present. .SH "SEE ALSO" -.BR XBell (3X11), +.BR XBell (__libmansuffix__), .BR XkbBell (__libmansuffix__), .BR XkbChangeEnabledControls (__libmansuffix__), .BR XkbForceDeviceBell (__libmansuffix__), diff --git a/libX11/man/xkb/XkbForceDeviceBell.man b/libX11/man/xkb/XkbForceDeviceBell.man index 6842aa696..7e45ffa09 100644 --- a/libX11/man/xkb/XkbForceDeviceBell.man +++ b/libX11/man/xkb/XkbForceDeviceBell.man @@ -32,27 +32,14 @@ XkbForceDeviceBell \- Rings the bell on any keyboard, overriding user preference settings for audible bells .SH SYNOPSIS +.HP .B Bool XkbForceDeviceBell -( -.I display, -.I window, -.I device_spec, -.I bell_class, -.I bell_id, -.I percent -) -.br - Display *\fI display \fP\^; -.br - Window \fI window \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int \fI bell_class \fP\^; -.br - unsigned int \fI bell_id \fP\^; -.br - int \fI percent \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Window " "window" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "bell_class" "\^," +.BI "unsigned int " "bell_id" "\^," +.BI "int " "percent" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -304,7 +291,7 @@ If your application needs to generate visual bell feedback on the screen when it receives a bell event, use the window ID in the XkbBellNotifyEvent, if present. .SH "SEE ALSO" -.BR XBell (3X11), +.BR XBell (__libmansuffix__), .BR XkbBell (__libmansuffix__), .BR XkbBellNotify (__libmansuffix__), .BR XkbChangeEnabledControls (__libmansuffix__), diff --git a/libX11/man/xkb/XkbFreeClientMap.man b/libX11/man/xkb/XkbFreeClientMap.man index 1a5610c9c..78a46800e 100644 --- a/libX11/man/xkb/XkbFreeClientMap.man +++ b/libX11/man/xkb/XkbFreeClientMap.man @@ -32,18 +32,11 @@ XkbFreeClientMap \- Free memory used by the client map member of an XkbDescRec structure .SH SYNOPSIS +.HP .B void XkbFreeClientMap -( -.I xkb, -.I which, -.I free_all -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeCompatMap.man b/libX11/man/xkb/XkbFreeCompatMap.man index 8b7263f58..36db2fae2 100644 --- a/libX11/man/xkb/XkbFreeCompatMap.man +++ b/libX11/man/xkb/XkbFreeCompatMap.man @@ -31,18 +31,11 @@ .SH NAME XkbFreeCompatMap \- Free an entire compatibility map or selected portions of one .SH SYNOPSIS +.HP .B void XkbFreeCompatMap -( -.I xkb, -.I which, -.I free_map -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_map\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_map" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeComponentList.man b/libX11/man/xkb/XkbFreeComponentList.man index 137fd707c..f2e8d0a5b 100644 --- a/libX11/man/xkb/XkbFreeComponentList.man +++ b/libX11/man/xkb/XkbFreeComponentList.man @@ -32,12 +32,9 @@ XkbFreeComponentList \- Free the structure returned by .I XkbListComponents .SH SYNOPSIS +.HP .B void XkbFreeComponentList -( -.I list -) -.br - XkbComponentListPtr \fIlist\fP\^; +.BI "(\^XkbComponentListPtr " "list" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeControls.man b/libX11/man/xkb/XkbFreeControls.man index 905a894ba..8c5c2662a 100644 --- a/libX11/man/xkb/XkbFreeControls.man +++ b/libX11/man/xkb/XkbFreeControls.man @@ -31,18 +31,11 @@ .SH NAME XkbFreeControls \- Frees memory used by the ctrls member of an XkbDescRec structure .SH SYNOPSIS +.HP .B void XkbFreeControls -( -.I xkb, -.I which, -.I free_all -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeDeviceInfo.man b/libX11/man/xkb/XkbFreeDeviceInfo.man index 0f162c008..a7c38933a 100644 --- a/libX11/man/xkb/XkbFreeDeviceInfo.man +++ b/libX11/man/xkb/XkbFreeDeviceInfo.man @@ -31,18 +31,11 @@ .SH NAME XkbFreeDeviceInfo \- Free an XkbDeviceInfoRec structure .SH SYNOPSIS +.HP .B void XkbFreeDeviceInfo -( -.I device_info, -.I which, -.I free_all -) -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDeviceInfoPtr " "device_info" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomColors.man b/libX11/man/xkb/XkbFreeGeomColors.man index 02827ae98..3cf4108a1 100644 --- a/libX11/man/xkb/XkbFreeGeomColors.man +++ b/libX11/man/xkb/XkbFreeGeomColors.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomColors \- Free geometry colors .SH SYNOPSIS +.HP .B void XkbFreeGeomColors -( -.I geom, -.I first, -.I count, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomDoodads.man b/libX11/man/xkb/XkbFreeGeomDoodads.man index 56256e366..a4f1be4c1 100644 --- a/libX11/man/xkb/XkbFreeGeomDoodads.man +++ b/libX11/man/xkb/XkbFreeGeomDoodads.man @@ -30,18 +30,11 @@ .SH NAME XkbFreeGeomDoodads \- Free geometry doodads .SH SYNOPSIS +.HP .B void XkbFreeGeomDoodads -( -.I doodads, -.I count, -.I free_all -) -.br - XkbDoodadPtr \fIdoodads\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDoodadPtr " "doodads" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomKeyAliases.man b/libX11/man/xkb/XkbFreeGeomKeyAliases.man index f5efa4f06..d8491bbe9 100644 --- a/libX11/man/xkb/XkbFreeGeomKeyAliases.man +++ b/libX11/man/xkb/XkbFreeGeomKeyAliases.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomKeyAliases \- Free geometry key aliases .SH SYNOPSIS +.HP .B void XkbFreeGeomKeyAliases -( -.I geom, -.I first, -.I count, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomKeys.man b/libX11/man/xkb/XkbFreeGeomKeys.man index b325daf44..8464bcc07 100644 --- a/libX11/man/xkb/XkbFreeGeomKeys.man +++ b/libX11/man/xkb/XkbFreeGeomKeys.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomKeys \- Free geometry keys .SH SYNOPSIS +.HP .B void XkbFreeGeomKeys -( -.I row, -.I first, -.I count, -.I free_all -) -.br - XkbRowPtr \fIrow\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbRowPtr " "row" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomOutlines.man b/libX11/man/xkb/XkbFreeGeomOutlines.man index 3ed6c3d31..b8ab7db37 100644 --- a/libX11/man/xkb/XkbFreeGeomOutlines.man +++ b/libX11/man/xkb/XkbFreeGeomOutlines.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomOutlines \- Free geometry outlines .SH SYNOPSIS +.HP .B void XkbFreeGeomOutlines -( -.I shape, -.I first, -.I count, -.I free_all -) -.br - XkbShapePtr \fIshape\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbShapePtr " "shape" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomOverlayKeys.man b/libX11/man/xkb/XkbFreeGeomOverlayKeys.man index a065ace6d..cea7cab6e 100644 --- a/libX11/man/xkb/XkbFreeGeomOverlayKeys.man +++ b/libX11/man/xkb/XkbFreeGeomOverlayKeys.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomOverlayKeys \- Free keys in an overlay row .SH SYNOPSIS +.HP .B void XkbFreeGeomOverlayKeys -( -.I row, -.I first, -.I count, -.I free_all -) -.br - XkbRowPtr \fIrow\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbRowPtr " "row" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomOverlayRows.man b/libX11/man/xkb/XkbFreeGeomOverlayRows.man index f31fca216..f595bc249 100644 --- a/libX11/man/xkb/XkbFreeGeomOverlayRows.man +++ b/libX11/man/xkb/XkbFreeGeomOverlayRows.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomOverlayRows \- Free rows in an overlay .SH SYNOPSIS +.HP .B void XkbFreeGeomOverlayRows -( -.I overlay, -.I first, -.I count, -.I free_all -) -.br - XkbSectionPtr \fIoverlay\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbSectionPtr " "overlay" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomOverlays.man b/libX11/man/xkb/XkbFreeGeomOverlays.man index afeb35822..1ce4daa6d 100644 --- a/libX11/man/xkb/XkbFreeGeomOverlays.man +++ b/libX11/man/xkb/XkbFreeGeomOverlays.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomOverlays \- Free rows in a section .SH SYNOPSIS +.HP .B void XkbFreeGeomOverlays -( -.I section, -.I first, -.I count, -.I free_all -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomPoints.man b/libX11/man/xkb/XkbFreeGeomPoints.man index ce941eb1b..f21f43f4d 100644 --- a/libX11/man/xkb/XkbFreeGeomPoints.man +++ b/libX11/man/xkb/XkbFreeGeomPoints.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomPoints \- Free points in a outline .SH SYNOPSIS +.HP .B void XkbFreeGeomPoints -( -.I outline, -.I first, -.I count, -.I free_all -) -.br - XkbOutlinePtr \fIoutline\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbOutlinePtr " "outline" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomProperties.man b/libX11/man/xkb/XkbFreeGeomProperties.man index 586dfb1d1..b01505492 100644 --- a/libX11/man/xkb/XkbFreeGeomProperties.man +++ b/libX11/man/xkb/XkbFreeGeomProperties.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomProperties \- Free geometry properties .SH SYNOPSIS +.HP .B void XkbFreeGeomProperties -( -.I geom, -.I first, -.I count, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool * \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool *" "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomRows.man b/libX11/man/xkb/XkbFreeGeomRows.man index 0a67af5ca..7857501f9 100644 --- a/libX11/man/xkb/XkbFreeGeomRows.man +++ b/libX11/man/xkb/XkbFreeGeomRows.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomRows \- Free rows in a section .SH SYNOPSIS +.HP .B void XkbFreeGeomRows -( -.I section, -.I first, -.I count, -.I free_all -) -.br - XkbSectionPtr \fIsection\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbSectionPtr " "section" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomSections.man b/libX11/man/xkb/XkbFreeGeomSections.man index 2f8e59e8b..c2d4e1fc6 100644 --- a/libX11/man/xkb/XkbFreeGeomSections.man +++ b/libX11/man/xkb/XkbFreeGeomSections.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomSections \- Free geometry sections .SH SYNOPSIS +.HP .B void XkbFreeGeomSections -( -.I geom, -.I first, -.I count, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeomShapes.man b/libX11/man/xkb/XkbFreeGeomShapes.man index 43ab964da..059a291f1 100644 --- a/libX11/man/xkb/XkbFreeGeomShapes.man +++ b/libX11/man/xkb/XkbFreeGeomShapes.man @@ -30,21 +30,12 @@ .SH NAME XkbFreeGeomShapes \- Free geometry shapes .SH SYNOPSIS +.HP .B void XkbFreeGeomShapes -( -.I geom, -.I first, -.I count, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - int \fIfirst\fP\^; -.br - int \fIcount\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "int " "first" "\^," +.BI "int " "count" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeGeometry.man b/libX11/man/xkb/XkbFreeGeometry.man index 8b3425678..6c85ca40e 100644 --- a/libX11/man/xkb/XkbFreeGeometry.man +++ b/libX11/man/xkb/XkbFreeGeometry.man @@ -30,18 +30,11 @@ .SH NAME XkbFreeGeometry \- Free an entire geometry .SH SYNOPSIS +.HP .B void XkbFreeGeometry -( -.I geom, -.I which, -.I free_all -) -.br - XkbGeometryPtr \fIgeom\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbGeometryPtr " "geom" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeIndicatorMaps.man b/libX11/man/xkb/XkbFreeIndicatorMaps.man index 9dd6272a0..463406124 100644 --- a/libX11/man/xkb/XkbFreeIndicatorMaps.man +++ b/libX11/man/xkb/XkbFreeIndicatorMaps.man @@ -32,12 +32,9 @@ XkbFreeIndicatorMaps \- Frees memory used by the .I indicators member of an XkbDescRec structure .SH SYNOPSIS +.HP .B void XkbFreeIndicatorMaps -( -.I xkb -) -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeKeyboard.man b/libX11/man/xkb/XkbFreeKeyboard.man index 0d13bb124..e3ffc03be 100644 --- a/libX11/man/xkb/XkbFreeKeyboard.man +++ b/libX11/man/xkb/XkbFreeKeyboard.man @@ -31,18 +31,11 @@ XkbFreeKeyboard \- Destroys either an entire XkbDescRec or just some of its members .SH SYNOPSIS +.HP .B void XkbFreeKeyboard -( -.I xkb, -.I which, -.I free_all -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeNames.man b/libX11/man/xkb/XkbFreeNames.man index 576bf916d..3ac701745 100644 --- a/libX11/man/xkb/XkbFreeNames.man +++ b/libX11/man/xkb/XkbFreeNames.man @@ -31,18 +31,11 @@ .SH NAME XkbFreeNames \- Free symbolic names structures .SH SYNOPSIS +.HP .B void XkbFreeNames -( -.I xkb, -.I which, -.I free_map -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_map\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_map" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbFreeServerMap.man b/libX11/man/xkb/XkbFreeServerMap.man index 63454257f..438f56da5 100644 --- a/libX11/man/xkb/XkbFreeServerMap.man +++ b/libX11/man/xkb/XkbFreeServerMap.man @@ -32,18 +32,11 @@ XkbFreeServerMap \- Free memory used by the server member of an XkbDescRec structure .SH SYNOPSIS +.HP .B void XkbFreeServerMap -( -.I xkb, -.I which, -.I free_all -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - Bool \fIfree_all\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "Bool " "free_all" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetAccessXTimeout.man b/libX11/man/xkb/XkbGetAccessXTimeout.man index 7a53cc995..73f4b536a 100644 --- a/libX11/man/xkb/XkbGetAccessXTimeout.man +++ b/libX11/man/xkb/XkbGetAccessXTimeout.man @@ -31,30 +31,15 @@ XkbGetAccessXTimeout \- Queries the current AccessXTimeout options for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbGetAccessXTimeout -( -.I display, -.I device_spec, -.I timeout_rtrn, -.I ctrls_mask_rtrn, -.I ctrls_values_rtrn, -.I options_mask_rtrn, -.I options_values_rtrn -) -.br - Display *\fI display \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned short *\fI timeout_rtrn \fP\^; -.br - unsigned int *\fI ctrls_mask_rtrn \fP\^; -.br - unsigned int *\fI ctrls_values_rtrn \fP\^; -.br - unsigned short *\fI options_mask_rtrn \fP\^; -.br - unsigned short *\fI options_values_rtrn \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned short *" "timeout_rtrn" "\^," +.BI "unsigned int *" "ctrls_mask_rtrn" "\^," +.BI "unsigned int *" "ctrls_values_rtrn" "\^," +.BI "unsigned short *" "options_mask_rtrn" "\^," +.BI "unsigned short *" "options_values_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetAutoRepeatRate.man b/libX11/man/xkb/XkbGetAutoRepeatRate.man index 677819d2b..1b6c9fc44 100644 --- a/libX11/man/xkb/XkbGetAutoRepeatRate.man +++ b/libX11/man/xkb/XkbGetAutoRepeatRate.man @@ -31,21 +31,12 @@ XkbGetAutoRepeatRate \- Gets the current attributes of the RepeatKeys control for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbGetAutoRepeatRate -( -.I display, -.I device_spec, -.I timeout_rtrn, -.I interval_rtrn -) -.br - Display *\fI display \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int *\fI timeout_rtrn \fP\^; -.br - unsigned int *\fI interval_rtrn \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int *" "timeout_rtrn" "\^," +.BI "unsigned int *" "interval_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetAutoResetControls.man b/libX11/man/xkb/XkbGetAutoResetControls.man index 23d8dd274..cd18b6306 100644 --- a/libX11/man/xkb/XkbGetAutoResetControls.man +++ b/libX11/man/xkb/XkbGetAutoResetControls.man @@ -30,18 +30,11 @@ .SH NAME XkbGetAutoResetControls \- Gets the current values of the auto-reset controls .SH SYNOPSIS +.HP .B Bool XkbGetAutoResetControls -( -.I dpy, -.I auto_ctrls, -.I auto_values -) -.br - Display *\fI dpy \fP\^; -.br - unsigned int *\fI auto_ctrls \fP\^; -.br - unsigned int *\fI auto_values \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int *" "auto_ctrls" "\^," +.BI "unsigned int *" "auto_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetBounceKeysDelay.man b/libX11/man/xkb/XkbGetBounceKeysDelay.man index 917296bb6..8138fc3a7 100644 --- a/libX11/man/xkb/XkbGetBounceKeysDelay.man +++ b/libX11/man/xkb/XkbGetBounceKeysDelay.man @@ -32,18 +32,11 @@ XkbGetBounceKeysDelay \- Queries the current BounceKeys delay for a keyboard device. .SH SYNOPSIS +.HP .B Bool XkbGetBounceKeysDelay -( -.I display, -.I device_spec, -.I delay_rtrn -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int *\fIdelay_rtrn\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int *" "delay_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetCompatMap.man b/libX11/man/xkb/XkbGetCompatMap.man index cb8be2eae..b3e0b2ba8 100644 --- a/libX11/man/xkb/XkbGetCompatMap.man +++ b/libX11/man/xkb/XkbGetCompatMap.man @@ -32,18 +32,11 @@ XkbGetCompatMap \- Fetch any combination of the current compatibility map components from the server .SH SYNOPSIS +.HP .B Status XkbGetCompatMap -( -.I display, -.I which, -.I xkb -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescRec * \fIxkb\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescRec *" "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetControls.man b/libX11/man/xkb/XkbGetControls.man index b4631f109..377ccb362 100644 --- a/libX11/man/xkb/XkbGetControls.man +++ b/libX11/man/xkb/XkbGetControls.man @@ -31,18 +31,11 @@ .SH NAME XkbGetControls \- Finds the current state of Xkb server controls .SH SYNOPSIS +.HP .B Status XkbGetControls -( -.I display, -.I which, -.I xkb -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned long \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned long " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetControlsChanges.man b/libX11/man/xkb/XkbGetControlsChanges.man index e293e080d..53824df30 100644 --- a/libX11/man/xkb/XkbGetControlsChanges.man +++ b/libX11/man/xkb/XkbGetControlsChanges.man @@ -32,18 +32,11 @@ XkbGetControlsChanges \- Updates a local copy of a keyboard description with the changes previously noted by one or more calls to XkbNoteControlsChanges .SH SYNOPSIS +.HP XkbGetControlsChanges -( -.I dpy, -.I xkb, -.I changes -) -.br - Display * \fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbNameChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbNameChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetDetectableAutorepeat.man b/libX11/man/xkb/XkbGetDetectableAutorepeat.man index 24ebc5efd..b14b0a75c 100644 --- a/libX11/man/xkb/XkbGetDetectableAutorepeat.man +++ b/libX11/man/xkb/XkbGetDetectableAutorepeat.man @@ -31,15 +31,10 @@ XkbGetDetectableAutorepeat \- Determines whether or not the server supports DetectableAutorepeat .SH SYNOPSIS +.HP .B Bool XkbGetDetectableAutorepeat -( -.I display, -.I supported_rtrn -) -.br - Display * \fIdisplay\fP\^; -.br - Bool * \fIsupported_rtrn\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Bool *" "supported_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetDeviceButtonActions.man b/libX11/man/xkb/XkbGetDeviceButtonActions.man index b1a076b54..66255492b 100644 --- a/libX11/man/xkb/XkbGetDeviceButtonActions.man +++ b/libX11/man/xkb/XkbGetDeviceButtonActions.man @@ -32,24 +32,13 @@ XkbGetDeviceButtonActions \- Query the button actions associated with an X Input Extension device .SH SYNOPSIS +.HP .B Status XkbGetDeviceButtonActions -( -.I dpy, -.I device_info, -.I all_buttons, -.I first_button, -.I num_buttons -) -.br - Display * \fIdpy\fP\^; -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - Bool \fIall_buttons\fP\^; -.br - unsigned int \fIfirst_button\fP\^; -.br - unsigned int \fInum_buttons\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDeviceInfoPtr " "device_info" "\^," +.BI "Bool " "all_buttons" "\^," +.BI "unsigned int " "first_button" "\^," +.BI "unsigned int " "num_buttons" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetDeviceInfo.man b/libX11/man/xkb/XkbGetDeviceInfo.man index 4157296e7..c6c3d418d 100644 --- a/libX11/man/xkb/XkbGetDeviceInfo.man +++ b/libX11/man/xkb/XkbGetDeviceInfo.man @@ -33,24 +33,13 @@ XkbGetDeviceInfo \- Determine whether the X server allows Xkb access to particul the core X keyboard, or to determine the status of indicator maps, indicator names or button actions on a non-KeyClass extension device .SH SYNOPSIS +.HP .B XkbDeviceInfoPtr XkbGetDeviceInfo -( -.I dpy, -.I which, -.I device_spec, -.I ind_class, -.I ind_id -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIind_class\fP\^; -.br - unsigned int \fIind_id\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "ind_class" "\^," +.BI "unsigned int " "ind_id" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -262,4 +251,4 @@ typedef struct { .fi .SH "SEE ALSO" .BR XkbAllocDeviceInfo (__libmansuffix__), -.BR XListInputDevices (3X11) +.BR XListInputDevices (__libmansuffix__) diff --git a/libX11/man/xkb/XkbGetDeviceInfoChanges.man b/libX11/man/xkb/XkbGetDeviceInfoChanges.man index ed873a982..ceda76d28 100644 --- a/libX11/man/xkb/XkbGetDeviceInfoChanges.man +++ b/libX11/man/xkb/XkbGetDeviceInfoChanges.man @@ -33,18 +33,11 @@ XkbGetDeviceInfoChanges \- Query the changes that have occurred in the button actions or indicator names and indicator maps associated with an input extension device .SH SYNOPSIS +.HP .B Status XkbGetDeviceInfoChanges -( -.I dpy, -.I device_info, -.I changes -) -.br - Display * \fIdpy\fP\^; -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - XkbDeviceChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDeviceInfoPtr " "device_info" "\^," +.BI "XkbDeviceChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetDeviceLedInfo.man b/libX11/man/xkb/XkbGetDeviceLedInfo.man index 33e83f544..3a3c4a1b6 100644 --- a/libX11/man/xkb/XkbGetDeviceLedInfo.man +++ b/libX11/man/xkb/XkbGetDeviceLedInfo.man @@ -32,24 +32,13 @@ XkbGetDeviceLedInfo \- Query the indicator names, maps, and state associated with an LED feedback of an input extension device .SH SYNOPSIS +.HP .B Status XkbGetDeviceLedInfo -( -.I dpy, -.I device_info, -.I led_class, -.I led_id, -.I which -) -.br - Display * \fIdpy\fP\^; -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - unsigned int \fIled_class\fP\^; -.br - unsigned int \fIled_id\fP\^; -.br - unsigned int \fIwhich\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDeviceInfoPtr " "device_info" "\^," +.BI "unsigned int " "led_class" "\^," +.BI "unsigned int " "led_id" "\^," +.BI "unsigned int " "which" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetGeometry.man b/libX11/man/xkb/XkbGetGeometry.man index 6add607ec..6af9907b2 100644 --- a/libX11/man/xkb/XkbGetGeometry.man +++ b/libX11/man/xkb/XkbGetGeometry.man @@ -31,15 +31,10 @@ XkbGetGeometry \- Loads a keyboard geometry if you already have the keyboard description .SH SYNOPSIS +.HP .B Status XkbGetGeometry -( -.I dpy, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetIndicatorChanges.man b/libX11/man/xkb/XkbGetIndicatorChanges.man index 04faaba79..272112ebe 100644 --- a/libX11/man/xkb/XkbGetIndicatorChanges.man +++ b/libX11/man/xkb/XkbGetIndicatorChanges.man @@ -31,21 +31,12 @@ XkbGetIndicatorChanges \- Updates a local copy of the keyboard description with the actual values of one or more calls to XkbNoteIndicatorChanges .SH SYNOPSIS +.HP .B Status XkbGetIndicatorChanges -( -.I dpy, -.I xkb, -.I changes, -.I state -) -.br - Display *\fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbIndicatorChangesPtr \fIchanges\fP\^; -.br - unsigned int \fIstate\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbIndicatorChangesPtr " "changes" "\^," +.BI "unsigned int " "state" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetIndicatorMap.man b/libX11/man/xkb/XkbGetIndicatorMap.man index 931842a4e..8c14313c2 100644 --- a/libX11/man/xkb/XkbGetIndicatorMap.man +++ b/libX11/man/xkb/XkbGetIndicatorMap.man @@ -31,18 +31,11 @@ XkbGetIndicatorMap \- Gets the map for one or more indicators, using a mask to specify the indicators .SH SYNOPSIS +.HP .B Status XkbGetIndicatorMap -( -.I dpy, -.I which, -.I desc -) -.br - Display *\fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIdesc\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "desc" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetIndicatorState.man b/libX11/man/xkb/XkbGetIndicatorState.man index ad2e0aa7c..a00e66af3 100644 --- a/libX11/man/xkb/XkbGetIndicatorState.man +++ b/libX11/man/xkb/XkbGetIndicatorState.man @@ -30,18 +30,11 @@ .SH NAME XkbGetIndicatorState \- Obtains the current state of the keyboard indicators .SH SYNOPSIS +.HP .B Status XkbGetIndicatorState -( -.I display, -.I device_spec, -.I state_return -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIstate_return\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "state_return" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyActions.man b/libX11/man/xkb/XkbGetKeyActions.man index 93385bca6..f82411da8 100644 --- a/libX11/man/xkb/XkbGetKeyActions.man +++ b/libX11/man/xkb/XkbGetKeyActions.man @@ -31,21 +31,12 @@ XkbGetKeyActions \- Update the actions (the key_acts array) for a subset of the keys in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetKeyActions -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyBehaviors.man b/libX11/man/xkb/XkbGetKeyBehaviors.man index 82584cdf6..90d0d4f97 100644 --- a/libX11/man/xkb/XkbGetKeyBehaviors.man +++ b/libX11/man/xkb/XkbGetKeyBehaviors.man @@ -31,21 +31,12 @@ XkbChangeTypesOfKey \- Obtain the behaviors (the behaviors array) for a subset of the keys in a keyboard description from the server .SH SYNOPSIS +.HP .B Status XkbChangeTypesOfKey -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyExplicitComponents.man b/libX11/man/xkb/XkbGetKeyExplicitComponents.man index b06a38296..8ad000016 100644 --- a/libX11/man/xkb/XkbGetKeyExplicitComponents.man +++ b/libX11/man/xkb/XkbGetKeyExplicitComponents.man @@ -27,27 +27,17 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbGetKeyExplicitComponents 3Xkb "20 Jul 1999" "X v11 Rel. 6.4" "XKB -FUNCTION" +.TH XkbGetKeyExplicitComponents __libmansuffix__ "20 Jul 1999" "X v11 Rel. 6.4" "XKB FUNCTION" .SH NAME XkbGetKeyExplicitComponents \- Obtain the explicit components (the explicit array) for a subset of the keys in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetKeyExplicitComponents -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyModifierMap.man b/libX11/man/xkb/XkbGetKeyModifierMap.man index ab7978fa1..802138219 100644 --- a/libX11/man/xkb/XkbGetKeyModifierMap.man +++ b/libX11/man/xkb/XkbGetKeyModifierMap.man @@ -31,21 +31,12 @@ XkbGetKeyModifierMap \- Update the modifier map for one or more of the keys in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetKeyModifierMap -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeySyms.man b/libX11/man/xkb/XkbGetKeySyms.man index 95e073748..aff18a883 100644 --- a/libX11/man/xkb/XkbGetKeySyms.man +++ b/libX11/man/xkb/XkbGetKeySyms.man @@ -31,21 +31,12 @@ XkbGetKeySyms \- Obtain the symbols for a subset of the keys in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetKeySyms -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyTypes.man b/libX11/man/xkb/XkbGetKeyTypes.man index 68ed52c6f..35c870c3b 100644 --- a/libX11/man/xkb/XkbGetKeyTypes.man +++ b/libX11/man/xkb/XkbGetKeyTypes.man @@ -32,21 +32,12 @@ XkbGetKeyTypes \- Obtain the list of available key types in the server's keyboard mapping .SH SYNOPSIS +.HP .B Status XkbGetKeyTypes -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyVirtualModMap.man b/libX11/man/xkb/XkbGetKeyVirtualModMap.man index 6b35a7723..c34fffeb7 100644 --- a/libX11/man/xkb/XkbGetKeyVirtualModMap.man +++ b/libX11/man/xkb/XkbGetKeyVirtualModMap.man @@ -31,21 +31,12 @@ XkbGetKeyVirtualModMap \- Obtain the virtual modifier map (the vmodmap array) for a subset of the keys in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetKeyVirtualModMap -( -.I dpy, -.I first, -.I num, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIfirst\fP\^; -.br - unsigned int \fInum\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "first" "\^," +.BI "unsigned int " "num" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyboard.man b/libX11/man/xkb/XkbGetKeyboard.man index 2f5769bcf..bd949c2ca 100644 --- a/libX11/man/xkb/XkbGetKeyboard.man +++ b/libX11/man/xkb/XkbGetKeyboard.man @@ -32,18 +32,11 @@ XkbGetKeyboard \- Retrieves one or more components of a keyboard device description .SH SYNOPSIS +.HP .B XkbDescPtr XkbGetKeyboard -( -.I display, -.I which, -.I device_spec -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "device_spec" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetKeyboardByName.man b/libX11/man/xkb/XkbGetKeyboardByName.man index b27b07c7f..dabed8d91 100644 --- a/libX11/man/xkb/XkbGetKeyboardByName.man +++ b/libX11/man/xkb/XkbGetKeyboardByName.man @@ -33,27 +33,14 @@ XkbGetKeyboardByName \- Build a new keyboard description from a set of named components, and to optionally have the server use the resulting description to replace an active one .SH SYNOPSIS +.HP .B XkbDescPtr XkbGetKeyboardByName -( -.I dpy, -.I device_spec, -.I names, -.I want, -.I need, -.I load -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - XkbComponentNamesPtr \fInames\fP\^; -.br - unsigned int \fIwant\fP\^; -.br - unsigned int \fIneed\fP\^; -.br - Bool \fIload\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "XkbComponentNamesPtr " "names" "\^," +.BI "unsigned int " "want" "\^," +.BI "unsigned int " "need" "\^," +.BI "Bool " "load" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetMap.man b/libX11/man/xkb/XkbGetMap.man index ab1c7893b..f43e53f22 100644 --- a/libX11/man/xkb/XkbGetMap.man +++ b/libX11/man/xkb/XkbGetMap.man @@ -33,18 +33,11 @@ XkbGetMap \- Allocate an XkbDescRec structure and populate it with the server's keyboard client map and server map .SH SYNOPSIS +.HP .B XkbDescPtr XkbGetMap -( -.I display, -.I which, -.I device_spec -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "device_spec" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetNameChanges.man b/libX11/man/xkb/XkbGetNameChanges.man index 08921a0ef..245092cdf 100644 --- a/libX11/man/xkb/XkbGetNameChanges.man +++ b/libX11/man/xkb/XkbGetNameChanges.man @@ -33,18 +33,11 @@ XkbGetNameChanges \- Update the local copy of the keyboard description with the actual values of the results of one or more calls to .I XkbNoteNameChanges .SH SYNOPSIS +.HP .B Status XkbGetNameChanges -( -.I dpy, -.I xkb, -.I changes -) -.br - Display * \fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - XkbNameChangesPtr \fIchanges\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "XkbNameChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetNamedGeometry.man b/libX11/man/xkb/XkbGetNamedGeometry.man index c142decaa..2a76d0b69 100644 --- a/libX11/man/xkb/XkbGetNamedGeometry.man +++ b/libX11/man/xkb/XkbGetNamedGeometry.man @@ -27,23 +27,16 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbGetNamedGeometry 3Xkb "Release 6.1" "X Version 11" "XKBLIB FUNCTION" +.TH XkbGetNamedGeometry __libmansuffix__ __xorgversion__ "XKB FUNCTIONS" .SH NAME XkbGetNamedGeometry \- Loads a keyboard geometry description from this database by name .SH SYNTAX +.HP .B Status XkbGetNamedGeometry -( -.I dpy, -.I xkb, -.I name -) -.br - Display * \fIdpy\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - Atom \fIname\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "Atom " "name" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetNamedIndicator.man b/libX11/man/xkb/XkbGetNamedIndicator.man index 8abad9dc2..c335d29fd 100644 --- a/libX11/man/xkb/XkbGetNamedIndicator.man +++ b/libX11/man/xkb/XkbGetNamedIndicator.man @@ -31,30 +31,15 @@ XkbGetNamedIndicator \- Look up the indicator map and other information for an indicator by name .SH SYNOPSIS +.HP .B Bool XkbGetNamedIndicator -( -.I dpy, -.I dev_spec, -.I name, -.I ndx_rtrn, -.I state_rtrn, -.I map_rtrn, -.I real_rtrn -) -.br - Display *\fIdpy\fP\^; -.br - unsigned int \fIdev_spec\fP\^; -.br - Atom \fIname\fP\^; -.br - int *\fIndx_rtrn\fP\^; -.br - Bool *\fIstate_rtrn\fP\^; -.br - XkbIndicatorMapPtr \fImap_rtrn\fP\^; -.br - Bool *\fIreal_rtrn\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "dev_spec" "\^," +.BI "Atom " "name" "\^," +.BI "int *" "ndx_rtrn" "\^," +.BI "Bool *" "state_rtrn" "\^," +.BI "XkbIndicatorMapPtr " "map_rtrn" "\^," +.BI "Bool *" "real_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetNames.man b/libX11/man/xkb/XkbGetNames.man index 6d29a4ff2..a96fcd806 100644 --- a/libX11/man/xkb/XkbGetNames.man +++ b/libX11/man/xkb/XkbGetNames.man @@ -31,18 +31,11 @@ .SH NAME XkbGetNames \- Obtain symbolic names from the server .SH SYNOPSIS +.HP .B Status XkbGetNames -( -.I dpy, -.I which, -.I Xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIXkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "Xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetSlowKeysDelay.man b/libX11/man/xkb/XkbGetSlowKeysDelay.man index ff7b29f35..86e54ac14 100644 --- a/libX11/man/xkb/XkbGetSlowKeysDelay.man +++ b/libX11/man/xkb/XkbGetSlowKeysDelay.man @@ -31,18 +31,11 @@ .SH NAME XkbGetSlowKeysDelay \- Gets the SlowKeys acceptance delay for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbGetSlowKeysDelay -( -.I display, -.I device_spec, -.I delay_rtrn -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int *\fIdelay_rtrn \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int *" "delay_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetState.man b/libX11/man/xkb/XkbGetState.man index dbdcd4705..1d98e7f87 100644 --- a/libX11/man/xkb/XkbGetState.man +++ b/libX11/man/xkb/XkbGetState.man @@ -30,18 +30,11 @@ .SH NAME XkbGetState \- Obtains the keyboard state .SH SYNOPSIS +.HP .B Bool XkbGetState -( -.I display, -.I device_spec, -.I state_return -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - XkbStatePtr \fIstate_return\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "XkbStatePtr " "state_return" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetStickyKeysOptions.man b/libX11/man/xkb/XkbGetStickyKeysOptions.man index 7d3547d68..2ae1242f2 100644 --- a/libX11/man/xkb/XkbGetStickyKeysOptions.man +++ b/libX11/man/xkb/XkbGetStickyKeysOptions.man @@ -30,18 +30,11 @@ .SH NAME XkbGetStickyKeysOptions \- Queries the current StickyKeys attributes for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbGetStickyKeysOptions -( -.I display, -.I device_spec, -.I options_rtrn -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int *\fIoptions_rtrn\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int *" "options_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetUpdatedMap.man b/libX11/man/xkb/XkbGetUpdatedMap.man index 97cefe96e..ed1401884 100644 --- a/libX11/man/xkb/XkbGetUpdatedMap.man +++ b/libX11/man/xkb/XkbGetUpdatedMap.man @@ -32,18 +32,11 @@ XkbGetUpdatedMap \- Update the client or server map information in an existing keyboard description .SH SYNOPSIS +.HP .B Status XkbGetUpdatedMap -( -.I display, -.I which, -.I xkb -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetVirtualMods.man b/libX11/man/xkb/XkbGetVirtualMods.man index e62670e44..5aa31a280 100644 --- a/libX11/man/xkb/XkbGetVirtualMods.man +++ b/libX11/man/xkb/XkbGetVirtualMods.man @@ -32,18 +32,11 @@ XkbGetVirtualMods \- Obtain a subset of the virtual modifier bindings (the vmods array) in a keyboard description .SH SYNOPSIS +.HP .B Status XkbGetVirtualMods -( -.I dpy, -.I which, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbGetXlibControls.man b/libX11/man/xkb/XkbGetXlibControls.man index 91860a76e..b9f5428a8 100644 --- a/libX11/man/xkb/XkbGetXlibControls.man +++ b/libX11/man/xkb/XkbGetXlibControls.man @@ -31,12 +31,9 @@ .SH NAME XkbGetXlibControls \- Determines the current state of the Library Controls .SH SYNOPSIS +.HP .B unsigned int XkbGetXlibControls -( -.I display -) -.br - Display *\fIdisplay\fP\^; +.BI "(\^Display *" "display" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbIgnoreExtension.man b/libX11/man/xkb/XkbIgnoreExtension.man index 8b0cc4a70..addb095b1 100644 --- a/libX11/man/xkb/XkbIgnoreExtension.man +++ b/libX11/man/xkb/XkbIgnoreExtension.man @@ -31,12 +31,9 @@ XkbIgnoreExtension \- Prevents core X library keyboard functions from using the X Keyboard Extension .SH SYNOPSIS +.HP .B Bool XkbIgnoreExtension -( -.I ignore -) -.br - Bool *\fIignore\fP\^; +.BI "(\^Bool *" "ignore" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -86,4 +83,4 @@ The .I XkbIgnoreExtension function returns False if it was unable to apply the ignore request. .SH "SEE ALSO" -.BR XOpenDisplay (3X11) +.BR XOpenDisplay (__libmansuffix__) diff --git a/libX11/man/xkb/XkbInitCanonicalKeyTypes.man b/libX11/man/xkb/XkbInitCanonicalKeyTypes.man index 13aed6176..658b979bc 100644 --- a/libX11/man/xkb/XkbInitCanonicalKeyTypes.man +++ b/libX11/man/xkb/XkbInitCanonicalKeyTypes.man @@ -32,18 +32,11 @@ XkbInitCanonicalKeyTypes \- Set the definitions of the canonical key types in a client map to their default values .SH SYNOPSIS +.HP .B Status XkbInitCanonicalKeyTypes -( -.I xkb, -.I which, -.I keypadVMod -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - int \fIkeypadVMod\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "which" "\^," +.BI "int " "keypadVMod" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyAction.man b/libX11/man/xkb/XkbKeyAction.man index e6a2902bd..d67c3c14f 100644 --- a/libX11/man/xkb/XkbKeyAction.man +++ b/libX11/man/xkb/XkbKeyAction.man @@ -30,18 +30,11 @@ .SH NAME XkbKeyAction \- Returns the key action .SH SYNOPSIS +.HP .B XkbAction XkbKeyAction -( -.I xkb, -.I keycode, -.I idx -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIidx\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "idx" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyActionEntry.man b/libX11/man/xkb/XkbKeyActionEntry.man index 4dd54aa21..6fbfe7d38 100644 --- a/libX11/man/xkb/XkbKeyActionEntry.man +++ b/libX11/man/xkb/XkbKeyActionEntry.man @@ -33,21 +33,12 @@ level lvl from the two-dimensional table of key actions associated with the key corresponding to keycode .SH SYNOPSIS -.B XkbAction XkbKeyActionEntry macro -( -.I xkb, -.I keycode, -.I shift, -.I grp -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIshift\fP\^; -.br - int \fIgrp\fP\^; +.HP +.B XkbAction XkbKeyActionEntry +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "shift" "\^," +.BI "int " "grp" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyActionsPtr.man b/libX11/man/xkb/XkbKeyActionsPtr.man index c9d4a29fb..64e84d442 100644 --- a/libX11/man/xkb/XkbKeyActionsPtr.man +++ b/libX11/man/xkb/XkbKeyActionsPtr.man @@ -33,15 +33,10 @@ XkbKeyActionsPtr \- Returns a pointer to the two-dimensional array of key actions associated with the key corresponding to keycode .SH SYNOPSIS -.B XkbKeyActionPtr XkbKeyActionsPtr macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B XkbKeyActionPtr XkbKeyActionsPtr +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyGroupInfo.man b/libX11/man/xkb/XkbKeyGroupInfo.man index 50787b415..749888187 100644 --- a/libX11/man/xkb/XkbKeyGroupInfo.man +++ b/libX11/man/xkb/XkbKeyGroupInfo.man @@ -33,15 +33,10 @@ XkbKeyGroupInfo \- Returns the number of groups of symbols bound to the key corresponding to keycode .SH SYNOPSIS -.B unsigned char XkbKeyGroupInfo macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B unsigned char XkbKeyGroupInfo +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyGroupWidth.man b/libX11/man/xkb/XkbKeyGroupWidth.man index 0a3b7fb2c..09244f057 100644 --- a/libX11/man/xkb/XkbKeyGroupWidth.man +++ b/libX11/man/xkb/XkbKeyGroupWidth.man @@ -34,18 +34,11 @@ XkbKeyGroupWidth \- Computes the width of the type associated with the group for the key corresponding to .I keycode .SH SYNOPSIS -.B int XkbKeyGroupWidth macro -( -.I xkb, -.I keycode, -.I grp -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIgrp\fP\^; +.HP +.B int XkbKeyGroupWidth +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "grp" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyGroupsWidth.man b/libX11/man/xkb/XkbKeyGroupsWidth.man index a8b59ae65..3dcc003f0 100644 --- a/libX11/man/xkb/XkbKeyGroupsWidth.man +++ b/libX11/man/xkb/XkbKeyGroupsWidth.man @@ -32,15 +32,10 @@ XkbKeyGroupsWidth \- Computes the maximum width associated with the key corresponding to .I keycode .SH SYNOPSIS -.B int XkbKeyGroupsWidth macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeyGroupsWidth +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyHasActions.man b/libX11/man/xkb/XkbKeyHasActions.man index f1b457f7a..d448b501a 100644 --- a/libX11/man/xkb/XkbKeyHasActions.man +++ b/libX11/man/xkb/XkbKeyHasActions.man @@ -32,15 +32,10 @@ XkbKeyHasActions \- Determines if the key corresponding to .I keycode has any actions associated with it .SH SYNOPSIS -.B int XkbKeyHasActions macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeyHasActions +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyNumActions.man b/libX11/man/xkb/XkbKeyNumActions.man index b37897b0d..e1d3ef204 100644 --- a/libX11/man/xkb/XkbKeyNumActions.man +++ b/libX11/man/xkb/XkbKeyNumActions.man @@ -32,15 +32,10 @@ XkbKeyNumActions \- Computes the number of actions associated with the key corresponding to keycode .SH SYNOPSIS -.B int XkbKeyNumActions macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeyNumActions +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyNumGroups.man b/libX11/man/xkb/XkbKeyNumGroups.man index 70daba5fc..cf0fdc783 100644 --- a/libX11/man/xkb/XkbKeyNumGroups.man +++ b/libX11/man/xkb/XkbKeyNumGroups.man @@ -32,15 +32,10 @@ XkbKeyNumGroups \- Returns the number of groups of symbols bound to the key corresponding to keycode .SH SYNOPSIS -.B int XkbKeyNumGroups macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeyNumGroups +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyNumSyms.man b/libX11/man/xkb/XkbKeyNumSyms.man index 95fa50048..83b10efe7 100644 --- a/libX11/man/xkb/XkbKeyNumSyms.man +++ b/libX11/man/xkb/XkbKeyNumSyms.man @@ -33,15 +33,10 @@ XkbKeyNumSyms \- Returns the total number of keysyms for the key corresponding to .I keycode .SH SYNOPSIS -.B int XkbKeyNumSyms macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeyNumSyms +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeySymEntry.man b/libX11/man/xkb/XkbKeySymEntry.man index 9fed16559..4c3527934 100644 --- a/libX11/man/xkb/XkbKeySymEntry.man +++ b/libX11/man/xkb/XkbKeySymEntry.man @@ -35,21 +35,12 @@ and group from the two-dimensional array of keysyms for the key corresponding to .I keycode .SH SYNOPSIS -.B KeySym XkbKeySymEntry macro -( -.I xkb, -.I keycode, -.I shift, -.I grp -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIshift\fP\^; -.br - int \fIgrp\fP\^; +.HP +.B KeySym XkbKeySymEntry +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "shift" "\^," +.BI "int " "grp" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeySymsOffset.man b/libX11/man/xkb/XkbKeySymsOffset.man index 4bbc12b95..ec145c35a 100644 --- a/libX11/man/xkb/XkbKeySymsOffset.man +++ b/libX11/man/xkb/XkbKeySymsOffset.man @@ -33,15 +33,10 @@ XkbKeySymsOffset \- Returns the offset of the two-dimensional array of keysyms for the key corresponding to .I keycode .SH SYNOPSIS -.B int XkbKeySymsOffset macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B int XkbKeySymsOffset +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeySymsPtr.man b/libX11/man/xkb/XkbKeySymsPtr.man index d83199ae4..a0a1df9fb 100644 --- a/libX11/man/xkb/XkbKeySymsPtr.man +++ b/libX11/man/xkb/XkbKeySymsPtr.man @@ -33,15 +33,10 @@ XkbKeySymsPtr \- Returns the pointer to the two-dimensional array of keysyms for the key corresponding to .I keycode .SH SYNOPSIS -.B KeySym * XkbKeySymsPtr macro -( -.I xkb, -.I keycode -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; +.HP +.B KeySym * XkbKeySymsPtr +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyType.man b/libX11/man/xkb/XkbKeyType.man index 2d0358225..5847c584a 100644 --- a/libX11/man/xkb/XkbKeyType.man +++ b/libX11/man/xkb/XkbKeyType.man @@ -31,18 +31,11 @@ .SH NAME XkbKeyType \- Obtain the index of a key type or the pointer to a key type .SH SYNOPSIS +.HP .B XkbKeyTypePtr XkbKeyType -( -.I xkb, -.I keycode, -.I group -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIgroup\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "group" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyTypeIndex.man b/libX11/man/xkb/XkbKeyTypeIndex.man index 806116545..b7ded7a7e 100644 --- a/libX11/man/xkb/XkbKeyTypeIndex.man +++ b/libX11/man/xkb/XkbKeyTypeIndex.man @@ -31,18 +31,11 @@ .SH NAME XkbKeyTypeIndex \- Obtain the index of a key type or the pointer to a key type .SH SYNOPSIS +.HP .B int XkbKeyTypeIndex -( -.I xkb, -.I keycode, -.I group -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkeycode\fP\^; -.br - int \fIgroup\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "keycode" "\^," +.BI "int " "group" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeyTypesForCoreSymbols.man b/libX11/man/xkb/XkbKeyTypesForCoreSymbols.man index ca35b76da..c44ff504f 100644 --- a/libX11/man/xkb/XkbKeyTypesForCoreSymbols.man +++ b/libX11/man/xkb/XkbKeyTypesForCoreSymbols.man @@ -32,27 +32,14 @@ XkbKeyTypesForCoreSymbols \- Determine the Xkb key types appropriate for the symbols bound to a key in a core keyboard mapping .SH SYNOPSIS +.HP .B int XkbKeyTypesForCoreSymbols -( -.I xkb, -.I map_width, -.I core_syms, -.I protected, -.I types_inout, -.I xkb_syms_rtrn -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - int \fImap_width\fP\^; -.br - KeySym * \fIcore_syms\fP\^; -.br - unsigned int \fIprotected\fP\^; -.br - int * \fItypes_inout\fP\^; -.br - KeySym * \fIxkb_syms_rtrn\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "int " "map_width" "\^," +.BI "KeySym *" "core_syms" "\^," +.BI "unsigned int " "protected" "\^," +.BI "int *" "types_inout" "\^," +.BI "KeySym *" "xkb_syms_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeycodeToKeysym.man b/libX11/man/xkb/XkbKeycodeToKeysym.man index 130c1ded1..5e495d8bd 100644 --- a/libX11/man/xkb/XkbKeycodeToKeysym.man +++ b/libX11/man/xkb/XkbKeycodeToKeysym.man @@ -31,21 +31,12 @@ XkbKeycodeToKeysym \- Finds the keysym bound to a particular key at a specified group and shift level .SH SYNOPSIS +.HP .B KeySym XkbKeycodeToKeysym -( -.I dpy, -.I kc, -.I group, -.I level -) -.br - Display *\fIdpy\fP\^; -.br - KeyCode \fIkc\fP\^; -.br - unsigned int \fIgroup\fP\^; -.br - unsigned int \fIlevel\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "KeyCode " "kc" "\^," +.BI "unsigned int " "group" "\^," +.BI "unsigned int " "level" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbKeysymToModifiers.man b/libX11/man/xkb/XkbKeysymToModifiers.man index ff7e73607..ebccc21c0 100644 --- a/libX11/man/xkb/XkbKeysymToModifiers.man +++ b/libX11/man/xkb/XkbKeysymToModifiers.man @@ -31,15 +31,10 @@ XkbKeysymToModifiers \- Finds the set of modifiers bound to a particular keysym on the core keyboard .SH SYNOPSIS +.HP .B unsigned int XkbKeysymToModifiers -( -.I dpy, -.I ks -) -.br - Display *\fIdpy\fP\^; -.br - KeySym \fIks\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "KeySym " "ks" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLatchGroup.man b/libX11/man/xkb/XkbLatchGroup.man index 8b516ba1a..61ad5cc50 100644 --- a/libX11/man/xkb/XkbLatchGroup.man +++ b/libX11/man/xkb/XkbLatchGroup.man @@ -31,18 +31,11 @@ .SH NAME XkbLatchGroup \- Latches the keysym group .SH SYNOPSIS +.HP .B Bool XkbLatchGroup -( -.I display, -.I device_spec, -.I group -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIgroup\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "group" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLatchModifiers.man b/libX11/man/xkb/XkbLatchModifiers.man index baf706698..319b37f83 100644 --- a/libX11/man/xkb/XkbLatchModifiers.man +++ b/libX11/man/xkb/XkbLatchModifiers.man @@ -32,21 +32,12 @@ XkbLatchModifiers \- Latches and unlatches any of the eight real keyboard modifiers .SH SYNOPSIS +.HP .B Bool XkbLatchModifiers -( -.I display, -.I device_spec, -.I affect, -.I values -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIaffect\fP\^; -.br - unsigned int \fIvalues\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "affect" "\^," +.BI "unsigned int " "values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLibraryVersion.man b/libX11/man/xkb/XkbLibraryVersion.man index 1165e43d4..98d4ce9e8 100644 --- a/libX11/man/xkb/XkbLibraryVersion.man +++ b/libX11/man/xkb/XkbLibraryVersion.man @@ -30,15 +30,10 @@ .SH NAME XkbLibraryVersion \- Determines the compatibility of a library at runtime. .SH SYNOPSIS +.HP .B Bool XkbLibraryVersion -( -.I lib_major_in_out, -.I lib_minor_in_out -) -.br - int *\fIlib_major_in_out\fP\^; -.br - int *\fIlib_minor_in_out\fP\^; +.BI "(\^int *" "lib_major_in_out" "\^," +.BI "int *" "lib_minor_in_out" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbListComponents.man b/libX11/man/xkb/XkbListComponents.man index 6e6855def..f9f124248 100644 --- a/libX11/man/xkb/XkbListComponents.man +++ b/libX11/man/xkb/XkbListComponents.man @@ -31,21 +31,12 @@ .SH NAME XkbListComponents \- List of components for one or more component types .SH SYNOPSIS +.HP .B XkbComponentListPtr XkbListComponents -( -.I dpy, -.I device_spec, -.I ptrns, -.I max_inout -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - XkbComponentNamesPtr \fIptrnst\fP\^; -.br - int * \fImax_inout\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "XkbComponentNamesPtr " "ptrns" "\^," +.BI "int *" "max_inout" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLockGroup.man b/libX11/man/xkb/XkbLockGroup.man index 87eb8e270..42a30f717 100644 --- a/libX11/man/xkb/XkbLockGroup.man +++ b/libX11/man/xkb/XkbLockGroup.man @@ -31,18 +31,11 @@ .SH NAME XkbLockGroup \- Locks the keysym group .SH SYNOPSIS +.HP .B Bool XkbLockGroup -( -.I display, -.I device_spec, -.I group -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIgroup\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "group" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLockModifiers.man b/libX11/man/xkb/XkbLockModifiers.man index 25df6accf..add98f0f7 100644 --- a/libX11/man/xkb/XkbLockModifiers.man +++ b/libX11/man/xkb/XkbLockModifiers.man @@ -31,21 +31,12 @@ .SH NAME XkbLockModifiers \- Locks and unlocks any of the eight real keyboard modifiers .SH SYNOPSIS +.HP .B Bool XkbLockModifiers -( -.I display, -.I device_spec, -.I affect, -.I values -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIaffect\fP\^; -.br - unsigned int \fIvalues\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "affect" "\^," +.BI "unsigned int " "values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbLookupKeyBinding.man b/libX11/man/xkb/XkbLookupKeyBinding.man index 6f2022278..3a1463db3 100644 --- a/libX11/man/xkb/XkbLookupKeyBinding.man +++ b/libX11/man/xkb/XkbLookupKeyBinding.man @@ -30,27 +30,14 @@ .SH NAME XkbLookupKeyBinding \- Find the string bound to a key by XRebindKeySym .SH SYNOPSIS +.HP .B int XkbLookupKeyBinding -( -.I dpy, -.I sym, -.I state, -.I buf, -.I nbytes, -.I extra_rtrn -) -.br - Display * \fIdpy\fP\^; -.br - KeySym \fIsym\fP\^; -.br - unsigned int \fIstate\fP\^; -.br - char * \fIbuf\fP\^; -.br - int \fInbytes\fP\^; -.br - int * \fIextra_rtrn\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "KeySym " "sym" "\^," +.BI "unsigned int " "state" "\^," +.BI "char *" "buf" "\^," +.BI "int " "nbytes" "\^," +.BI "int *" "extra_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -100,5 +87,5 @@ returns the number of bytes that it placed into .I buf. .SH "SEE ALSO" .BR XkbTranslateKeySym (__libmansuffix__), -.BR XLookupString (3X11), -.BR XRebindKeysym (3X11) +.BR XLookupString (__libmansuffix__), +.BR XRebindKeysym (__libmansuffix__) diff --git a/libX11/man/xkb/XkbLookupKeySym.man b/libX11/man/xkb/XkbLookupKeySym.man index c3af29b44..eae13a4c1 100644 --- a/libX11/man/xkb/XkbLookupKeySym.man +++ b/libX11/man/xkb/XkbLookupKeySym.man @@ -30,24 +30,13 @@ .SH NAME XkbLookupKeySym \- Find the symbol associated with a key for a particular state .SH SYNOPSIS +.HP .B Bool XkbLookupKeySym -( -.I dpy, -.I key, -.I state, -.I mods_rtrn, -.I sym_rtrn -) -.br - Display *\fIdpy\fP\^; -.br - KeyCode \fIkey\fP\^; -.br - unsigned int \fIstate\fP\^; -.br - unsigned int *\fImods_rtrn\fP\^; -.br - KeySym *\fIsym_rtrn\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "KeyCode " "key" "\^," +.BI "unsigned int " "state" "\^," +.BI "unsigned int *" "mods_rtrn" "\^," +.BI "KeySym *" "sym_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -85,5 +74,5 @@ parameter is the state from a KeyPress or KeyRelease event. .I XkbLookupKeySym returns True if it succeeds. .SH "SEE ALSO" -.BR XLookupKeySym (3X11) +.BR XLookupKeySym (__libmansuffix__) diff --git a/libX11/man/xkb/XkbModActionVMods.man b/libX11/man/xkb/XkbModActionVMods.man index 9120a6571..94a0f4a8e 100644 --- a/libX11/man/xkb/XkbModActionVMods.man +++ b/libX11/man/xkb/XkbModActionVMods.man @@ -32,12 +32,9 @@ XkbModActionVMods \- Returns the vmods1 and vmods2 fields of act converted to the vmods format of an Xkb modifier description .SH SYNOPSIS -.B unsigned short XkbModActionVMods macro -( -.I act -) -.br - XkbAction \fIact\fP\^; +.HP +.B unsigned short XkbModActionVMods +.BI "(\^XkbAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbNoteControlsChanges.man b/libX11/man/xkb/XkbNoteControlsChanges.man index 880e29c2e..125c7053a 100644 --- a/libX11/man/xkb/XkbNoteControlsChanges.man +++ b/libX11/man/xkb/XkbNoteControlsChanges.man @@ -32,18 +32,11 @@ XkbNoteControlsChanges \- Notes the changes in a changes structure when a client receives an XkbControlsNotify event .SH SYNOPSIS +.HP .B void XkbNoteControlsChanges -( -.I changes, -.I new, -.I wanted -) -.br - XkbControlsChangesPtr \fIchanges\fP\^; -.br - XkbControlsNotifyEvent *\fInew\fP\^; -.br - unsigned int \fIwanted\fP\^; +.BI "(\^XkbControlsChangesPtr " "changes" "\^," +.BI "XkbControlsNotifyEvent *" "new" "\^," +.BI "unsigned int " "wanted" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbNoteDeviceChanges.man b/libX11/man/xkb/XkbNoteDeviceChanges.man index 8271e9f65..b62ec6cac 100644 --- a/libX11/man/xkb/XkbNoteDeviceChanges.man +++ b/libX11/man/xkb/XkbNoteDeviceChanges.man @@ -31,18 +31,11 @@ .SH NAME XkbNoteDeviceChanges \- Note device changes reported in an XkbExtensionDeviceNotify event .SH SYNOPSIS +.HP .B void XkbNoteDeviceChanges -( -.I old, -.I new, -.I wanted -) -.br - XkbDeviceChangesPtr \fIold\fP\^; -.br - XkbExtensionDeviceNotifyEvent * \fInew\fP\^; -.br - unsigned int \fIwanted\fP\^; +.BI "(\^XkbDeviceChangesPtr " "old" "\^," +.BI "XkbExtensionDeviceNotifyEvent *" "new" "\^," +.BI "unsigned int " "wanted" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbNoteIndicatorChanges.man b/libX11/man/xkb/XkbNoteIndicatorChanges.man index 48975b775..911b1b614 100644 --- a/libX11/man/xkb/XkbNoteIndicatorChanges.man +++ b/libX11/man/xkb/XkbNoteIndicatorChanges.man @@ -30,18 +30,11 @@ .SH NAME XkbNoteIndicatorChanges \- Notes the changes in a changes structure .SH SYNOPSIS +.HP .B void XkbNoteIndicatorChanges -( -.I old, -.I new, -.I wanted -) -.br - XkbIndicatorChangesPtr \fIold\fP\^; -.br - XkbIndicatorNotifyEvent *\fInew\fP\^; -.br - unsigned int \fIwanted\fP\^; +.BI "(\^XkbIndicatorChangesPtr " "old" "\^," +.BI "XkbIndicatorNotifyEvent *" "new" "\^," +.BI "unsigned int " "wanted" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbNoteNameChanges.man b/libX11/man/xkb/XkbNoteNameChanges.man index a17a4aa22..f4809be24 100644 --- a/libX11/man/xkb/XkbNoteNameChanges.man +++ b/libX11/man/xkb/XkbNoteNameChanges.man @@ -31,18 +31,11 @@ .SH NAME XkbNoteNameChanges \- Note the changed names in a changes structure .SH SYNOPSIS +.HP .B void XkbNoteNameChanges -( -.I old, -.I new, -.I wanted -) -.br - XkbNameChangesPtr \fIold\fP\^; -.br - XkbNamesNotifyEvent * \fInew\fP\^; -.br - unsigned int \fIwanted\fP\^; +.BI "(\^XkbNameChangesPtr " "old" "\^," +.BI "XkbNamesNotifyEvent *" "new" "\^," +.BI "unsigned int " "wanted" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbOpenDisplay.man b/libX11/man/xkb/XkbOpenDisplay.man index 22a44c814..0d74303eb 100644 --- a/libX11/man/xkb/XkbOpenDisplay.man +++ b/libX11/man/xkb/XkbOpenDisplay.man @@ -31,27 +31,14 @@ XkbOpenDisplay \- Checks for a compatible version of the Xkb extension in both the library and the server, and initializes the extension for use. .SH SYNOPSIS +.HP .B Display XkbOpenDisplay -( -.I display_name, -.I event_rtrn, -.I error_rtrn, -.I major_in_out, -.I minor_in_out, -.I reason_rtrn -) -.br - char *\fIdisplay_name\fP\^; -.br - int *\fIevent_rtrn\fP\^; -.br - int *\fIerror_rtrn\fP\^; -.br - int *\fImajor_in_out\fP\^; -.br - int *\fIminor_in_out\fP\^; -.br - int *\fIreason_rtrn\fP\^; +.BI "(\^char *" "display_name" "\^," +.BI "int *" "event_rtrn" "\^," +.BI "int *" "error_rtrn" "\^," +.BI "int *" "major_in_out" "\^," +.BI "int *" "minor_in_out" "\^," +.BI "int *" "reason_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -167,4 +154,4 @@ The Xkb extension has not been properly initialized .SH "SEE ALSO" .BR XkbLibraryVersion (__libmansuffix__), .BR XkbQueryExtension (__libmansuffix__), -.BR XOpenDisplay (3X11) +.BR XOpenDisplay (__libmansuffix__) diff --git a/libX11/man/xkb/XkbOutOfRangeGroupInfo.man b/libX11/man/xkb/XkbOutOfRangeGroupInfo.man index 8a02612f0..e12f8c33b 100644 --- a/libX11/man/xkb/XkbOutOfRangeGroupInfo.man +++ b/libX11/man/xkb/XkbOutOfRangeGroupInfo.man @@ -32,12 +32,9 @@ XkbOutOfRangeGroupInfo \- Returns only the out-of-range processing information from the group_info field of an XkbSymMapRec structure .SH SYNOPSIS -.B unsigned char XkbOutOfRangeGroupInfo macro -( -.I grp_inf -) -.br - unsigned char \fIgrp_inf\fP\^; +.HP +.B unsigned char XkbOutOfRangeGroupInfo +.BI "(\^unsigned char " "grp_inf" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbOutOfRangeGroupNumber.man b/libX11/man/xkb/XkbOutOfRangeGroupNumber.man index c38b3d866..7e3a9a5ba 100644 --- a/libX11/man/xkb/XkbOutOfRangeGroupNumber.man +++ b/libX11/man/xkb/XkbOutOfRangeGroupNumber.man @@ -32,12 +32,9 @@ XkbOutOfRangeGroupNumber \- Returns the out-of-range group number, represented as a group index, from the group_info field of an XkbSymMapRec structure .SH SYNOPSIS -.B unsigned char XkbOutOfRangeGroupNumber macro -( -.I grp_inf -) -.br - unsigned char \fIgrp_inf\fP\^; +.HP +.B unsigned char XkbOutOfRangeGroupNumber +.BI "(\^unsigned char " "grp_inf" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbPtrActionX.man b/libX11/man/xkb/XkbPtrActionX.man index 7bf9e2aa4..7dfaabc06 100644 --- a/libX11/man/xkb/XkbPtrActionX.man +++ b/libX11/man/xkb/XkbPtrActionX.man @@ -32,12 +32,9 @@ XkbPtrActionX \- Returns the high_XXX and low_XXX fields of act converted to a signed int .SH SYNOPSIS -.B int XkbPtrActionX macro -( -.I act -) -.br - XkbPtrAction \fIact\fP\^; +.HP +.B int XkbPtrActionX +.BI "(\^XkbPtrAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbPtrActionY.man b/libX11/man/xkb/XkbPtrActionY.man index 9370e9ac2..c342a0940 100644 --- a/libX11/man/xkb/XkbPtrActionY.man +++ b/libX11/man/xkb/XkbPtrActionY.man @@ -32,12 +32,9 @@ XkbPtrActionY \- Returns the high_YYY and low_YYY fields of act converted to a signed int .SH SYNOPSIS -.B int XkbPtrActionY macro -( -.I act -) -.br - XkbPtrAction \fIact\fP\^; +.HP +.B int XkbPtrActionY +.BI "(\^XkbPtrAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbQueryExtension.man b/libX11/man/xkb/XkbQueryExtension.man index c5f2e9337..11fed2df4 100644 --- a/libX11/man/xkb/XkbQueryExtension.man +++ b/libX11/man/xkb/XkbQueryExtension.man @@ -30,27 +30,14 @@ .SH NAME XkbQueryExtension \- Determines the compatibility of a library at runtime. .SH SYNOPSIS +.HP .B Bool XkbQueryExtension -( -.I dpy, -.I opcode_rtrn, -.I event_rtrn, -.I error_rtrn, -.I major_in_out, -.I minor_in_out -) -.br - Display *\fIdpy\fP\^; -.br - int \fIopcode_rtrn\fP\^; -.br - int \fIevent_rtrn\fP\^; -.br - int *\fIerror_rtrn\fP\^; -.br - int \fImajor_in_out\fP\^; -.br - int \fIminor_in_out\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "int *" "opcode_rtrn" "\^," +.BI "int *" "event_rtrn" "\^," +.BI "int *" "error_rtrn" "\^," +.BI "int *" "major_in_out" "\^," +.BI "int *" "minor_in_out" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbRefreshKeyboardMapping.man b/libX11/man/xkb/XkbRefreshKeyboardMapping.man index 4e910eb1b..bc54d3b5b 100644 --- a/libX11/man/xkb/XkbRefreshKeyboardMapping.man +++ b/libX11/man/xkb/XkbRefreshKeyboardMapping.man @@ -31,12 +31,9 @@ XkbRefreshKeyboardMapping \- Update the keyboard description that is internal to the X library .SH SYNOPSIS +.HP .B Status XkbRefreshKeyboardMapping -( -.I event -) -.br - XkbMapNotifyEvent * \fIevent\fP\^; +.BI "(\^XkbMapNotifyEvent *" "event" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -75,4 +72,4 @@ type and range, but is otherwise invalid .BR XkbChangeMap (__libmansuffix__), .BR XkbGetKeyboardByName (__libmansuffix__), .BR XkbSetMap (__libmansuffix__), -.BR XRefreshKeyboardMapping (3X11) +.BR XRefreshKeyboardMapping (__libmansuffix__) diff --git a/libX11/man/xkb/XkbResizeDeviceButtonActions.man b/libX11/man/xkb/XkbResizeDeviceButtonActions.man index 9bace20a9..e1d9b52a2 100644 --- a/libX11/man/xkb/XkbResizeDeviceButtonActions.man +++ b/libX11/man/xkb/XkbResizeDeviceButtonActions.man @@ -31,15 +31,10 @@ .SH NAME XkbResizeDeviceButtonActions \- Allocate additional space for button actions in an XkbDeviceInfoRec structure .SH SYNOPSIS +.HP .B Status XkbResizeDeviceButtonActions -( -.I device_info, -.I new_total -) -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; -.br - unsigned int \fInew_total\fP\^; +.BI "(\^XkbDeviceInfoPtr " "device_info" "\^," +.BI "unsigned int " "new_total" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbResizeKeyActions.man b/libX11/man/xkb/XkbResizeKeyActions.man index d5f88d301..8d851546d 100644 --- a/libX11/man/xkb/XkbResizeKeyActions.man +++ b/libX11/man/xkb/XkbResizeKeyActions.man @@ -31,18 +31,11 @@ .SH NAME XkbResizeKeyActions \- Change the number of actions bound to a key .SH SYNOPSIS +.HP .B XkbAction * XkbResizeKeyActions -( -.I xkb, -.I key, -.I needed -) -.br - XkbDescRec * \fIxkb\fP\^; -.br - int \fIkey\fP\^; -.br - int \fIneeded\fP\^; +.BI "(\^XkbDescRec *" "xkb" "\^," +.BI "int " "key" "\^," +.BI "int " "needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbResizeKeySyms.man b/libX11/man/xkb/XkbResizeKeySyms.man index bba36d919..ce08a5a73 100644 --- a/libX11/man/xkb/XkbResizeKeySyms.man +++ b/libX11/man/xkb/XkbResizeKeySyms.man @@ -31,18 +31,11 @@ .SH NAME XkbResizeKeySyms \- Change the number of symbols bound to a key .SH SYNOPSIS +.HP .B KeySym * XkbResizeKeySyms -( -.I xkb, -.I key, -.I needed -) -.br - XkbDescRec * \fIxkb\fP\^; -.br - int \fIkey\fP\^; -.br - int \fIneeded\fP\^; +.BI "(\^XkbDescRec *" "xkb" "\^," +.BI "int " "key" "\^," +.BI "int " "needed" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbResizeKeyType.man b/libX11/man/xkb/XkbResizeKeyType.man index 5ce2a816c..64427b434 100644 --- a/libX11/man/xkb/XkbResizeKeyType.man +++ b/libX11/man/xkb/XkbResizeKeyType.man @@ -31,24 +31,13 @@ .SH NAME XkbResizeKeyType \- Change the number of levels in a key type .SH SYNOPSIS +.HP .B Status XkbResizeKeyType -( -.I xkb, -.I type_ndx, -.I map_count, -.I want_preserve, -.I new_num_lvls -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - int \fItype_ndx\fP\^; -.br - int \fImap_count\fP\^; -.br - Bool \fIwant_preserve\fP\^; -.br - int \fInew_num_lvls\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "int " "type_ndx" "\^," +.BI "int " "map_count" "\^," +.BI "Bool " "want_preserve" "\^," +.BI "int " "new_num_lvls" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSAActionSetCtrls.man b/libX11/man/xkb/XkbSAActionSetCtrls.man index b94288f3c..b1f870460 100644 --- a/libX11/man/xkb/XkbSAActionSetCtrls.man +++ b/libX11/man/xkb/XkbSAActionSetCtrls.man @@ -32,21 +32,16 @@ XkbSAActionSetCtrls \- Sets the .I ctrls0 through -I. ctrls3 +.I ctrls3 fields of .I act from .I ctrls .SH SYNOPSIS -.B void XkbSAActionSetCtrls macro -( -.I act, -.I ctrls -) -.br - XkbCtrlsAction \fIact\fP\^; -.br - unsigned int \fIctrls\fP\^; +.HP +.B void XkbSAActionSetCtrls +.BI "(\^XkbCtrlsAction " "act" "\^," +.BI "unsigned int " "ctrls" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSAGroup.man b/libX11/man/xkb/XkbSAGroup.man index a3608c9a3..bf05a6bfd 100644 --- a/libX11/man/xkb/XkbSAGroup.man +++ b/libX11/man/xkb/XkbSAGroup.man @@ -31,12 +31,9 @@ .SH NAME XkbSAGroup \- Returns the group_XXX field of act converted to a signed int .SH SYNOPSIS -.B int XkbSAGroup macro -( -.I act -) -.br - XkbAction \fIact\fP\^; +.HP +.B int XkbSAGroup +.BI "(\^XkbAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSAPtrDfltValue.man b/libX11/man/xkb/XkbSAPtrDfltValue.man index da0543c38..9c9e2641f 100644 --- a/libX11/man/xkb/XkbSAPtrDfltValue.man +++ b/libX11/man/xkb/XkbSAPtrDfltValue.man @@ -31,12 +31,9 @@ .SH NAME XkbSAPtrDfltValue \- Returns the valueXXX field of act converted to a signed int .SH SYNOPSIS -.B int XkbSAPtrDfltValue macro -( -.I act -) -.br - XkbAction \fIact\fP\^; +.HP +.B int XkbSAPtrDfltValue +.BI "(\^XkbAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSARedirectSetVMods.man b/libX11/man/xkb/XkbSARedirectSetVMods.man index f1d964835..23b948eee 100644 --- a/libX11/man/xkb/XkbSARedirectSetVMods.man +++ b/libX11/man/xkb/XkbSARedirectSetVMods.man @@ -30,15 +30,10 @@ .SH NAME XkbSARedirectSetVMods \- Sets the vmods0 and vmods1 of act from v .SH SYNOPSIS -.B void XkbSARedirectSetVMods macro -( -.I act, -.I v -) -.br - XkbRedirectKeyAction \fIact\fP\^; -.br - unsigned int \fIv\fP\^; +.HP +.B void XkbSARedirectSetVMods +.BI "(\^XkbRedirectKeyAction " "act" "\^," +.BI "unsigned int " "v" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSARedirectSetVModsMask.man b/libX11/man/xkb/XkbSARedirectSetVModsMask.man index 6675066b8..18e4085bc 100644 --- a/libX11/man/xkb/XkbSARedirectSetVModsMask.man +++ b/libX11/man/xkb/XkbSARedirectSetVModsMask.man @@ -32,15 +32,10 @@ XkbSARedirectSetVModsMask \- Sets the vmods_mask0 and vmods_mask1 fields of act from vm .SH SYNOPSIS -.B void XkbSARedirectSetVModsMask macro -( -.I act, -.I vm -) -.br - XkbRedirectKeyAction \fIact\fP\^; -.br - unsigned int \fIvm\fP\^; +.HP +.B void XkbSARedirectSetVModsMask +.BI "(\^XkbRedirectKeyAction " "act" "\^," +.BI "unsigned int " "vm" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSARedirectVMods.man b/libX11/man/xkb/XkbSARedirectVMods.man index 202654c69..114fde674 100644 --- a/libX11/man/xkb/XkbSARedirectVMods.man +++ b/libX11/man/xkb/XkbSARedirectVMods.man @@ -31,12 +31,9 @@ XkbSARedirectVMods \- Returns the vmods0 and vmods1 fields of act converted to an unsigned int .SH SYNOPSIS -.B unsigned int XkbSARedirectVMods macro -( -.I act -) -.br - XkbRedirectKeyAction \fIact\fP\^; +.HP +.B unsigned int XkbSARedirectVMods +.BI "(\^XkbRedirectKeyAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSARedirectVModsMask.man b/libX11/man/xkb/XkbSARedirectVModsMask.man index 6e78513df..cba3b98fc 100644 --- a/libX11/man/xkb/XkbSARedirectVModsMask.man +++ b/libX11/man/xkb/XkbSARedirectVModsMask.man @@ -31,12 +31,9 @@ XkbSARedirectVModsMask \- Returns the vmods_mask0 and vmods_mask1 fields of act converted to an unsigned int .SH SYNOPSIS -.B unsigned int XkbSARedirectVModsMask macro -( -.I act -) -.br - XkbRedirectKeyAction \fIact\fP\^; +.HP +.B unsigned int XkbSARedirectVModsMask +.BI "(\^XkbRedirectKeyAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSAScreen.man b/libX11/man/xkb/XkbSAScreen.man index 8f857d982..93ab5a29a 100644 --- a/libX11/man/xkb/XkbSAScreen.man +++ b/libX11/man/xkb/XkbSAScreen.man @@ -31,12 +31,9 @@ .SH NAME XkbSAScreen \- Returns the screenXXX field of act converted to a signed int .SH SYNOPSIS +.HP .B int XkbSAScreen -( -.I act -) -.br - XkbSwitchScreenAction \fIact\fP\^; +.BI "(\^XkbSwitchScreenAction " "act" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSASetGroup.man b/libX11/man/xkb/XkbSASetGroup.man index 01e86d935..3b03fa554 100644 --- a/libX11/man/xkb/XkbSASetGroup.man +++ b/libX11/man/xkb/XkbSASetGroup.man @@ -27,19 +27,14 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbSASetGroup 3Xkb "Release 6.1" "X Version 11" "XKBLIB FUNCTION" +.TH XkbSASetGroup __libmansuffix__ __xorgversion__ "XKB FUNCTIONS" .SH NAME XkbSASetGroup \- Sets the group_XXX field of act from the group index grp .SH SYNTAX -.B void XkbSASetGroup macro -( -.I act, -.I grp -) -.br - XkbAction \fIact\fP\^; -.br - int \fIgrp\fP\^; +.HP +.B void XkbSASetGroup +.BI "(\^XkbAction " "act" "\^," +.BI "int " "grp" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSASetPtrDfltValue.man b/libX11/man/xkb/XkbSASetPtrDfltValue.man index 284e466da..41041d9aa 100644 --- a/libX11/man/xkb/XkbSASetPtrDfltValue.man +++ b/libX11/man/xkb/XkbSASetPtrDfltValue.man @@ -31,15 +31,10 @@ .SH NAME XkbSASetPtrDfltValue \- Sets the valueXXX field of act from val .SH SYNOPSIS -.B void XkbSASetPtrDfltValue macro -( -.I act, -.I val -) -.br - XkbAction \fIact\fP\^; -.br - int \fIval\fP\^; +.HP +.B void XkbSASetPtrDfltValue +.BI "(\^XkbAction " "act" "\^," +.BI "int " "val" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSASetScreen.man b/libX11/man/xkb/XkbSASetScreen.man index 5a4dc22cc..63645daec 100644 --- a/libX11/man/xkb/XkbSASetScreen.man +++ b/libX11/man/xkb/XkbSASetScreen.man @@ -31,15 +31,10 @@ .SH NAME XkbSASetScreen \- Sets the screenXXX field of act from s .SH SYNOPSIS -.B void XkbSASetScreen macro -( -.I act, -.I s -) -.br - XkbSwitchScreenAction \fIact\fP\^; -.br - int \fIs\fP\^; +.HP +.B void XkbSASetScreen +.BI "(\^XkbSwitchScreenAction " "act" "\^," +.BI "int " "s" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSelectEventDetails.man b/libX11/man/xkb/XkbSelectEventDetails.man index 85f8cf705..6d8d3ff75 100644 --- a/libX11/man/xkb/XkbSelectEventDetails.man +++ b/libX11/man/xkb/XkbSelectEventDetails.man @@ -32,24 +32,13 @@ XkbSelectEventDetails \- Selects or deselects for a specific Xkb event and optionally places conditions on when events of that type are reported to your client .SH SYNOPSIS +.HP .B Bool XkbSelectEventDetails -( -.I display, -.I device_spec, -.I event_type, -.I bits_to_change, -.I values_for_bits -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIevent_type\fP\^; -.br - unsigned long int \fIbits_to_change\fP\^; -.br - unsigned long int \fIvalues_for_bits\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "event_type" "\^," +.BI "unsigned long int " "bits_to_change" "\^," +.BI "unsigned long int " "values_for_bits" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSelectEvents.man b/libX11/man/xkb/XkbSelectEvents.man index cb302c7dd..80f4ffa92 100644 --- a/libX11/man/xkb/XkbSelectEvents.man +++ b/libX11/man/xkb/XkbSelectEvents.man @@ -32,21 +32,12 @@ XkbSelectEvents \- Selects and / or deselects for delivery of one or more Xkb events and has them delivered under all conditions .SH SYNOPSIS +.HP .B Bool XkbSelectEvents -( -.I display, -.I device_spec, -.I bits_to_change, -.I values_for_bits -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned long int \fIbits_to_change\fP\^; -.br - unsigned long int \fIvalues_for_bits\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned long int " "bits_to_change" "\^," +.BI "unsigned long int " "values_for_bits" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetAccessXTimeout.man b/libX11/man/xkb/XkbSetAccessXTimeout.man index fd7d6248d..4d07a0262 100644 --- a/libX11/man/xkb/XkbSetAccessXTimeout.man +++ b/libX11/man/xkb/XkbSetAccessXTimeout.man @@ -32,30 +32,15 @@ XkbSetAccessXTimeout \- Configures the AccessXTimeout options for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbSetAccessXTimeout -( -.I display, -.I device_spec, -.I timeout, -.I ctrls_mask, -.I ctrls_values, -.I opts_mask, -.I opts_values -) -.br - Display *\fI display \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned short \fI timeout \fP\^; -.br - unsigned int \fI ctrls_mask \fP\^; -.br - unsigned int \fI ctrls_values \fP\^; -.br - unsigned short \fI opts_mask \fP\^; -.br - unsigned short \fI opts_values \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned short " "timeout" "\^," +.BI "unsigned int " "ctrls_mask" "\^," +.BI "unsigned int " "ctrls_values" "\^," +.BI "unsigned short " "opts_mask" "\^," +.BI "unsigned short " "opts_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetAutoRepeatRate.man b/libX11/man/xkb/XkbSetAutoRepeatRate.man index 1334c0598..a033e7f4b 100644 --- a/libX11/man/xkb/XkbSetAutoRepeatRate.man +++ b/libX11/man/xkb/XkbSetAutoRepeatRate.man @@ -31,21 +31,12 @@ XkbSetAutoRepeatRate \- Sets the attributes of the RepeatKeys control for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbSetAutoRepeatRate -( -.I display, -.I device_spec, -.I timeout, -.I interval -) -.br - Display *\fI display \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - unsigned int \fI timeout \fP\^; -.br - unsigned int \fI interval \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "timeout" "\^," +.BI "unsigned int " "interval" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetAutoResetControls.man b/libX11/man/xkb/XkbSetAutoResetControls.man index 5c7765177..7f2ed5d0f 100644 --- a/libX11/man/xkb/XkbSetAutoResetControls.man +++ b/libX11/man/xkb/XkbSetAutoResetControls.man @@ -31,21 +31,12 @@ XkbSetAutoResetControls \- Changes the current values of the AutoReset control attributes .SH SYNOPSIS +.HP .B Bool XkbSetAutoResetControls -( -.I dpy, -.I changes, -.I auto_ctrls, -.I auto_values -) -.br - Display *\fI dpy \fP\^; -.br - unsigned int \fI changes \fP\^; -.br - unsigned int *\fI auto_ctrls \fP\^; -.br - unsigned int *\fI auto_values \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "changes" "\^," +.BI "unsigned int *" "auto_ctrls" "\^," +.BI "unsigned int *" "auto_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetBounceKeysDelay.man b/libX11/man/xkb/XkbSetBounceKeysDelay.man index a4cfc2629..4f43a3fdc 100644 --- a/libX11/man/xkb/XkbSetBounceKeysDelay.man +++ b/libX11/man/xkb/XkbSetBounceKeysDelay.man @@ -31,18 +31,11 @@ .SH NAME XkbSetBounceKeysDelay \- Sets the BounceKeys delay for a keyboard device .SH SYNOPSIS +.HP .B Bool XkbSetBounceKeysDelay -( -.I display, -.I device_spec, -.I delay -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int *\fIdelay\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int *" "delay" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetCompatMap.man b/libX11/man/xkb/XkbSetCompatMap.man index 96e374293..700ce55f6 100644 --- a/libX11/man/xkb/XkbSetCompatMap.man +++ b/libX11/man/xkb/XkbSetCompatMap.man @@ -31,21 +31,12 @@ .SH NAME XkbSetCompatMap \- Modify the server's compatibility map .SH SYNOPSIS +.HP .B Bool XkbSetCompatMap -( -.I display, -.I which, -.I xkb, -.I update_actions -) -.br - Display * \fIdisplay\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; -.br - Bool \fIupdate_actions\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^," +.BI "Bool " "update_actions" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetControls.man b/libX11/man/xkb/XkbSetControls.man index caf662b4d..2f3e4a5e4 100644 --- a/libX11/man/xkb/XkbSetControls.man +++ b/libX11/man/xkb/XkbSetControls.man @@ -32,18 +32,11 @@ XkbSetControls \- Copies changes to the X server based on a modified ctrls structure in a local copy of the keyboard description .SH SYNOPSIS +.HP .B Bool XkbSetControls -( -.I display, -.I which, -.I xkb -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned long \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned long " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetDebuggingFlags.man b/libX11/man/xkb/XkbSetDebuggingFlags.man index c877d3208..abf1db9ec 100644 --- a/libX11/man/xkb/XkbSetDebuggingFlags.man +++ b/libX11/man/xkb/XkbSetDebuggingFlags.man @@ -31,33 +31,16 @@ .SH NAME XkbSetDebuggingFlags \- Change the values of any of the debug controls .SH SYNOPSIS +.HP .B Bool XkbSetDebuggingFlags -( -.I display, -.I mask, -.I flags, -.I msg, -.I ctrls_mask, -.I ctrls, -.I ret_flags, -.I ret_ctrls -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fImask\fP\^; -.br - unsigned int \fIflags\fP\^; -.br - char *\fImsg\fP\^; -.br - unsigned int \fIctrls_mask\fP\^; -.br - unsigned int \fIctrls\fP\^; -.br - unsigned int *\fIret_flags\fP\^; -.br - unsigned int *\fIret_ctrls\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "mask" "\^," +.BI "unsigned int " "flags" "\^," +.BI "char *" "msg" "\^," +.BI "unsigned int " "ctrls_mask" "\^," +.BI "unsigned int " "ctrls" "\^," +.BI "unsigned int *" "ret_flags" "\^," +.BI "unsigned int *" "ret_ctrls" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetDetectableAutorepeat.man b/libX11/man/xkb/XkbSetDetectableAutorepeat.man index 9ba780bd9..566cd3917 100644 --- a/libX11/man/xkb/XkbSetDetectableAutorepeat.man +++ b/libX11/man/xkb/XkbSetDetectableAutorepeat.man @@ -30,18 +30,11 @@ .SH NAME XkbSetDetectableAutorepeat \- Sets DetectableAutorepeat .SH SYNTAX +.HP .B Bool XkbSetDetectableAutorepeat -( -.I display, -.I detectable, -.I supported_rtrn -) -.br - Display *\fI display \fP\^; -.br - Bool \fI detectable \fP\^; -.br - Bool *\fI supported_rtrn \fP\^; +.BI "(\^Display *" "display" "\^," +.BI "Bool " "detectable" "\^," +.BI "Bool *" "supported_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetDeviceButtonActions.man b/libX11/man/xkb/XkbSetDeviceButtonActions.man index ebfc5230f..83e4b4f14 100644 --- a/libX11/man/xkb/XkbSetDeviceButtonActions.man +++ b/libX11/man/xkb/XkbSetDeviceButtonActions.man @@ -27,28 +27,16 @@ .\" or other dealings in this Software without prior written authorization .\" of the copyright holder. .\" -.TH XkbSetDeviceButtonActions 3Xkb "Release 6.1" "X Version 11" "XKBLIB FUNCTION" +.TH XkbSetDeviceButtonActions __libmansuffix__ __xorgversion__ "XKB FUNCTIONS" .SH NAME XkbSetDeviceButtonActions \- Change only the button actions for an input extension device .SH SYNTAX +.HP .B Bool XkbSetDeviceButtonActions -( -.I dpy, -.I device, -.I first_button, -.I num_buttons, -.I actions -) -.br - Display * \fIdpy\fP\^; -.br - XkbDeviceInfoPtr \fIdevice\fP\^; -.br - unsigned int \fIfirst_button\fP\^; -.br - unsigned int \fInum_buttons\fP\^; -.br - *** MISSING *** \fIactions\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "XkbDeviceInfoPtr " "device" "\^," +.BI "unsigned int " "first_button" "\^," +.BI "unsigned int " "num_buttons" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -64,9 +52,6 @@ number of first button to update, 0 relative .TP .I \- num_buttons number of buttons to update -.TP -.I \- actions -*** MISSING *** .SH DESCRIPTION .LP .I XkbSetDeviceButtonActions diff --git a/libX11/man/xkb/XkbSetDeviceInfo.man b/libX11/man/xkb/XkbSetDeviceInfo.man index 593defcc1..53e4fc803 100644 --- a/libX11/man/xkb/XkbSetDeviceInfo.man +++ b/libX11/man/xkb/XkbSetDeviceInfo.man @@ -32,18 +32,11 @@ XkbSetDeviceInfo \- Modify some or all of the characteristics of an X Input Extension device .SH SYNOPSIS +.HP .B Bool XkbSetDeviceInfo -( -.I dpy, -.I which, -.I device_info -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDeviceInfoPtr \fIdevice_info\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDeviceInfoPtr " "device_info" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetIgnoreLockMods.man b/libX11/man/xkb/XkbSetIgnoreLockMods.man index 19684cf79..9ed3b0b6c 100644 --- a/libX11/man/xkb/XkbSetIgnoreLockMods.man +++ b/libX11/man/xkb/XkbSetIgnoreLockMods.man @@ -32,27 +32,14 @@ XkbSetIgnoreLockMods \- Sets the modifiers that, if locked, are not to be reported in matching events to passive grabs .SH SYNOPSIS +.HP .B Bool XkbSetIgnoreLockMods -( -.I display, -.I device_spec, -.I affect_real, -.I real_values, -.I affect_virtual, -.I virtual_values -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIaffect_real\fP\^; -.br - unsigned int \fIreal_values\fP\^; -.br - unsigned int \fIaffect_virtual\fP\^; -.br - unsigned int \fIvirtual_values\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "affect_real" "\^," +.BI "unsigned int " "real_values" "\^," +.BI "unsigned int " "affect_virtual" "\^," +.BI "unsigned int " "virtual_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetIndicatorMap.man b/libX11/man/xkb/XkbSetIndicatorMap.man index d419cc7b6..bd4686a4e 100644 --- a/libX11/man/xkb/XkbSetIndicatorMap.man +++ b/libX11/man/xkb/XkbSetIndicatorMap.man @@ -33,18 +33,11 @@ XkbSetIndicatorMap \- Downloads the changes to the server based on modifications to a local copy of the keyboard description which will update the maps for one or more indicators .SH SYNOPSIS +.HP .B Bool XkbSetIndicatorMap -( -.I dpy, -.I which, -.I desc -) -.br - Display *\fI dpy \fP\^; -.br - unsigned int \fI which \fP\^; -.br - XkbDescPtr \fI desc \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "desc" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetMap.man b/libX11/man/xkb/XkbSetMap.man index f822cbf7b..036fbd537 100644 --- a/libX11/man/xkb/XkbSetMap.man +++ b/libX11/man/xkb/XkbSetMap.man @@ -32,18 +32,11 @@ XkbSetMap \- Send a complete new set of values for entire components to the server. .SH SYNOPSIS +.HP .B Bool XkbSetMap -( -.I dpy, -.I which, -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetModActionVMods.man b/libX11/man/xkb/XkbSetModActionVMods.man index 3805be602..150361f2c 100644 --- a/libX11/man/xkb/XkbSetModActionVMods.man +++ b/libX11/man/xkb/XkbSetModActionVMods.man @@ -32,15 +32,10 @@ XkbSetModActionVMods \- Sets the vmods1 and vmods2 fields of act using the vmods format of an Xkb modifier description .SH SYNOPSIS -.B void XkbSetModActionVMods macro -( -.I act, -.I vmods -) -.br - XkbAction \fIact\fP\^; -.br - unsigned short \fIvmods\fP\^; +.HP +.B void XkbSetModActionVMods +.BI "(\^XkbAction " "act" "\^," +.BI "unsigned short " "vmods" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetNamedIndicator.man b/libX11/man/xkb/XkbSetNamedIndicator.man index d21cb1643..04ff572f6 100644 --- a/libX11/man/xkb/XkbSetNamedIndicator.man +++ b/libX11/man/xkb/XkbSetNamedIndicator.man @@ -32,30 +32,15 @@ XkbSetNamedIndicator \- Names an indicator if it is not already named; toggles the state of the indicator; sets the indicator to a specified state and sets the indicator map for the indicator .SH SYNOPSIS +.HP .B Bool XkbSetNamedIndicator -( -.I dpy, -.I device_spec, -.I name, -.I change_state, -.I state, -.I create_new, -.I map -) -.br - Display *\fI dpy \fP\^; -.br - unsigned int \fI device_spec \fP\^; -.br - Atom \fI name \fP\^; -.br - Bool \fI change_state \fP\^; -.br - Bool \fI state \fP\^; -.br - Bool \fI create_new \fP\^; -.br - XkbIndicatorMapPtr \fI map \fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "Atom " "name" "\^," +.BI "Bool " "change_state" "\^," +.BI "Bool " "state" "\^," +.BI "Bool " "create_new" "\^," +.BI "XkbIndicatorMapPtr " "map" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetNames.man b/libX11/man/xkb/XkbSetNames.man index 2a072d8c7..66d34a72a 100644 --- a/libX11/man/xkb/XkbSetNames.man +++ b/libX11/man/xkb/XkbSetNames.man @@ -31,24 +31,13 @@ .SH NAME XkbSetNames \- Change the symbolic names in the server .SH SYNOPSIS +.HP .B Bool XkbSetNames -( -.I dpy, -.I which, -.I first_type, -.I num_types , -.I xkb -) -.br - Display * \fIdpy\fP\^; -.br - unsigned int \fIwhich\fP\^; -.br - unsigned int \fIfirst_type\fP\^; -.br - unsigned int \fInum_types\fP\^; -.br - XkbDescPtr \fIxkb\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "unsigned int " "which" "\^," +.BI "unsigned int " "first_type" "\^," +.BI "unsigned int " "num_types" "\^," +.BI "XkbDescPtr " "xkb" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetPtrActionX.man b/libX11/man/xkb/XkbSetPtrActionX.man index 51b34a1e4..666001d34 100644 --- a/libX11/man/xkb/XkbSetPtrActionX.man +++ b/libX11/man/xkb/XkbSetPtrActionX.man @@ -32,15 +32,10 @@ XkbSetPtrActionX \- Sets the high_XXX and low_XXX fields of act from the signed integer value x .SH SYNOPSIS -.B void XkbSetPtrActionX macro -( -.I act, -.I x -) -.br - XkbPtrAction \fIact\fP\^; -.br - int \fIx\fP\^; +.HP +.B void XkbSetPtrActionX +.BI "(\^XkbPtrAction " "act" "\^," +.BI "int " "x" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetPtrActionY.man b/libX11/man/xkb/XkbSetPtrActionY.man index ba3d30d60..3bab0fad8 100644 --- a/libX11/man/xkb/XkbSetPtrActionY.man +++ b/libX11/man/xkb/XkbSetPtrActionY.man @@ -32,15 +32,10 @@ XkbSetPtrActionY \- Sets the high_YYY and low_YYY fields of act from the signed integer value y .SH SYNOPSIS -.B void XkbSetPtrActionY macro -( -.I act, -.I y -) -.br - XkbPtrAction \fIact\fP\^; -.br - int \fIy\fP\^; +.HP +.B void XkbSetPtrActionY +.BI "(\^XkbPtrAction " "act" "\^," +.BI "int " "y" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetServerInternalMods.man b/libX11/man/xkb/XkbSetServerInternalMods.man index 949e435f4..46c80013e 100644 --- a/libX11/man/xkb/XkbSetServerInternalMods.man +++ b/libX11/man/xkb/XkbSetServerInternalMods.man @@ -32,27 +32,14 @@ XkbSetServerInternalMods \- Sets the modifiers that are consumed by the server before events are delivered to the client .SH SYNOPSIS +.HP .B Bool XkbSetServerInternalMods -( -.I display, -.I device_spec, -.I affect_real, -.I real_values, -.I affect_virtual, -.I virtual_values -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned int \fIdevice_spec\fP\^; -.br - unsigned int \fIaffect_real\fP\^; -.br - unsigned int \fIreal_values\fP\^; -.br - unsigned int \fIaffect_virtual\fP\^; -.br - unsigned int \fIvirtual_values\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned int " "device_spec" "\^," +.BI "unsigned int " "affect_real" "\^," +.BI "unsigned int " "real_values" "\^," +.BI "unsigned int " "affect_virtual" "\^," +.BI "unsigned int " "virtual_values" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbSetXlibControls.man b/libX11/man/xkb/XkbSetXlibControls.man index 35cd43a9b..77ac22175 100644 --- a/libX11/man/xkb/XkbSetXlibControls.man +++ b/libX11/man/xkb/XkbSetXlibControls.man @@ -31,18 +31,11 @@ .SH NAME XkbSetXlibControls \- Changes the state of the Library Controls .SH SYNOPSIS +.HP .B unsigned int XkbSetXlibControls -( -.I display, -.I bits_to_change, -.I values_for_bits -) -.br - Display *\fIdisplay\fP\^; -.br - unsigned long \fIbits_to_change\fP\^; -.br - unsigned long \fIvalues_for_bits\fP\^; +.BI "(\^Display *" "display" "\^," +.BI "unsigned long " "bits_to_change" "\^," +.BI "unsigned long " "values_for_bits" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbTranslateKeyCode.man b/libX11/man/xkb/XkbTranslateKeyCode.man index 4e4455be0..36ec0c7f0 100644 --- a/libX11/man/xkb/XkbTranslateKeyCode.man +++ b/libX11/man/xkb/XkbTranslateKeyCode.man @@ -30,24 +30,13 @@ .SH NAME XkbTranslateKeyCode \- Translate a keycode to a key symbol and modifiers .SH SYNOPSIS +.HP .B Bool XkbTranslateKeyCode -( -.I xkb, -.I key, -.I mods, -.I mods_rtrn, -.I keysym_rtrn -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIkey\fP\^; -.br - unsigned int \fImods\fP\^; -.br - unsigned int * \fImods_rtrn\fP\^; -.br - KeySym * \fIkeysym_rtrn\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "key" "\^," +.BI "unsigned int " "mods" "\^," +.BI "unsigned int *" "mods_rtrn" "\^," +.BI "KeySym *" "keysym_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS @@ -86,4 +75,4 @@ to consume the Shift and Lock modifiers when processing all keys, even if the definition for the key type does not specify these modifiers. The AlwaysConsumeShiftAndLock control is unset by default. .SH "SEE ALSO" -.BR XLookupString (3X11) +.BR XLookupString (__libmansuffix__) diff --git a/libX11/man/xkb/XkbTranslateKeySym.man b/libX11/man/xkb/XkbTranslateKeySym.man index 526a012ea..e6f10b9a7 100644 --- a/libX11/man/xkb/XkbTranslateKeySym.man +++ b/libX11/man/xkb/XkbTranslateKeySym.man @@ -31,27 +31,14 @@ XkbTranslateKeySym \- Find the string and symbol associated with a keysym for a given keyboard state .SH SYNOPSIS +.HP .B int XkbTranslateKeySym -( -.I dpy , -.I sym_inout , -.I mods , -.I buf , -.I nbytes , -.I extra_rtrn -) -.br - Display *\fIdpy\fP\^; -.br - KeySym *\fIsym_inout\fP\^; -.br - unsigned int \fImods\fP\^; -.br - char *\fIbuf\fP\^; -.br - int \fInbytes\fP\^; -.br - int *\fIextra_rtrn\fP\^; +.BI "(\^Display *" "dpy" "\^," +.BI "KeySym *" "sym_inout" "\^," +.BI "unsigned int " "mods" "\^," +.BI "char *" "buf" "\^," +.BI "int " "nbytes" "\^," +.BI "int *" "extra_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbUpdateMapFromCore.man b/libX11/man/xkb/XkbUpdateMapFromCore.man index 6f04d8c46..b53536837 100644 --- a/libX11/man/xkb/XkbUpdateMapFromCore.man +++ b/libX11/man/xkb/XkbUpdateMapFromCore.man @@ -32,27 +32,14 @@ XkbUpdateMapFromCore \- Update a local Xkb keyboard map to reflect the mapping expressed by a core format mapping .SH SYNOPSIS +.HP .B Bool XkbUpdateMapFromCore -( -.I xkb, -.I first_key, -.I num_keys, -.I map_width, -.I core_keysyms, -.I changes -) -.br - XkbDescPtr \fIxkb\fP\^; -.br - KeyCode \fIfirst_key\fP\^; -.br - int \fInum_keys\fP\^; -.br - int \fImap_width\fP\^; -.br - KeySym * \fIcore_keysyms\fP\^; -.br - XkbChangesPtr \fIchanges\fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "KeyCode " "first_key" "\^," +.BI "int " "num_keys" "\^," +.BI "int " "map_width" "\^," +.BI "KeySym *" "core_keysyms" "\^," +.BI "XkbChangesPtr " "changes" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/man/xkb/XkbVirtualModsToReal.man b/libX11/man/xkb/XkbVirtualModsToReal.man index 17785e365..1fe7e91cb 100644 --- a/libX11/man/xkb/XkbVirtualModsToReal.man +++ b/libX11/man/xkb/XkbVirtualModsToReal.man @@ -31,18 +31,11 @@ XkbVirtualModsToReal \- Determines the mapping of virtual modifiers to core X protocol modifiers .SH SYNOPSIS +.HP .B Bool XkbVirtualModsToReal -( -.I xkb, -.I virtual_mask, -.I mask_rtrn -) -.br - XkbDescPtr \fI xkb \fP\^; -.br - unsigned int \fI virtual_mask \fP\^; -.br - unsigned int *\fI mask_rtrn \fP\^; +.BI "(\^XkbDescPtr " "xkb" "\^," +.BI "unsigned int " "virtual_mask" "\^," +.BI "unsigned int *" "mask_rtrn" "\^);" .if n .ti +5n .if t .ti +.5i .SH ARGUMENTS diff --git a/libX11/missing b/libX11/missing index 1c8ff7049..28055d2ae 100644 --- a/libX11/missing +++ b/libX11/missing @@ -1,10 +1,10 @@ #! /bin/sh # Common stub for a few missing GNU programs while installing. -scriptversion=2006-05-10.23 +scriptversion=2009-04-28.21; # UTC -# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006 -# Free Software Foundation, Inc. +# Copyright (C) 1996, 1997, 1999, 2000, 2002, 2003, 2004, 2005, 2006, +# 2008, 2009 Free Software Foundation, Inc. # Originally by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996. # This program is free software; you can redistribute it and/or modify @@ -18,9 +18,7 @@ scriptversion=2006-05-10.23 # GNU General Public License for more details. # You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA -# 02110-1301, USA. +# along with this program. If not, see <http://www.gnu.org/licenses/>. # As a special exception to the GNU General Public License, if you # distribute this file as part of a program that contains a @@ -89,6 +87,9 @@ Supported PROGRAM values: tar try tar, gnutar, gtar, then tar without non-portable flags yacc create \`y.tab.[ch]', if possible, from existing .[ch] +Version suffixes to PROGRAM as well as the prefixes \`gnu-', \`gnu', and +\`g' are ignored when checking the name. + Send bug reports to <bug-automake@gnu.org>." exit $? ;; @@ -106,15 +107,22 @@ Send bug reports to <bug-automake@gnu.org>." esac +# normalize program name to check for. +program=`echo "$1" | sed ' + s/^gnu-//; t + s/^gnu//; t + s/^g//; t'` + # Now exit if we have it, but it failed. Also exit now if we # don't have it and --version was passed (most likely to detect -# the program). +# the program). This is about non-GNU programs, so use $1 not +# $program. case $1 in - lex|yacc) + lex*|yacc*) # Not GNU programs, they don't have --version. ;; - tar) + tar*) if test -n "$run"; then echo 1>&2 "ERROR: \`tar' requires --run" exit 1 @@ -138,7 +146,7 @@ esac # If it does not exist, or fails to run (possibly an outdated version), # try to emulate it. -case $1 in +case $program in aclocal*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if @@ -148,7 +156,7 @@ WARNING: \`$1' is $msg. You should only need it if touch aclocal.m4 ;; - autoconf) + autoconf*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`${configure_ac}'. You might want to install the @@ -157,7 +165,7 @@ WARNING: \`$1' is $msg. You should only need it if touch configure ;; - autoheader) + autoheader*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified \`acconfig.h' or \`${configure_ac}'. You might want @@ -187,7 +195,7 @@ WARNING: \`$1' is $msg. You should only need it if while read f; do touch "$f"; done ;; - autom4te) + autom4te*) echo 1>&2 "\ WARNING: \`$1' is needed, but is $msg. You might have modified some files without having the @@ -210,7 +218,7 @@ WARNING: \`$1' is needed, but is $msg. fi ;; - bison|yacc) + bison*|yacc*) echo 1>&2 "\ WARNING: \`$1' $msg. You should only need it if you modified a \`.y' file. You may need the \`Bison' package @@ -240,7 +248,7 @@ WARNING: \`$1' $msg. You should only need it if fi ;; - lex|flex) + lex*|flex*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.l' file. You may need the \`Flex' package @@ -263,7 +271,7 @@ WARNING: \`$1' is $msg. You should only need it if fi ;; - help2man) + help2man*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a dependency of a manual page. You may need the @@ -277,11 +285,11 @@ WARNING: \`$1' is $msg. You should only need it if else test -z "$file" || exec >$file echo ".ab help2man is required to generate this page" - exit 1 + exit $? fi ;; - makeinfo) + makeinfo*) echo 1>&2 "\ WARNING: \`$1' is $msg. You should only need it if you modified a \`.texi' or \`.texinfo' file, or any other file @@ -310,7 +318,7 @@ WARNING: \`$1' is $msg. You should only need it if touch $file ;; - tar) + tar*) shift # We have already tried tar in the generic part. @@ -363,5 +371,6 @@ exit 0 # eval: (add-hook 'write-file-hooks 'time-stamp) # time-stamp-start: "scriptversion=" # time-stamp-format: "%:y-%02m-%02d.%02H" -# time-stamp-end: "$" +# time-stamp-time-zone: "UTC" +# time-stamp-end: "; # UTC" # End: diff --git a/libX11/modules/Makefile.in b/libX11/modules/Makefile.in index 21f285de8..c67aab77d 100644 --- a/libX11/modules/Makefile.in +++ b/libX11/modules/Makefile.in @@ -45,6 +45,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -92,6 +98,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -168,6 +175,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/modules/im/Makefile.in b/libX11/modules/im/Makefile.in index 240687029..d690ee65a 100644 --- a/libX11/modules/im/Makefile.in +++ b/libX11/modules/im/Makefile.in @@ -45,6 +45,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -92,6 +98,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -168,6 +175,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/modules/im/ximcp/Makefile.in b/libX11/modules/im/ximcp/Makefile.in index 31234c29e..905d526df 100644 --- a/libX11/modules/im/ximcp/Makefile.in +++ b/libX11/modules/im/ximcp/Makefile.in @@ -78,6 +78,9 @@ am__objects_1 = imCallbk.lo imDefFlt.lo imDefIc.lo imDefIm.lo \ imTransR.lo imTrX.lo am_libximcp_la_OBJECTS = $(am__objects_1) libximcp_la_OBJECTS = $(am_libximcp_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libximcp_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@ximcp_la_DEPENDENCIES = \ @@ -89,9 +92,9 @@ am_ximcp_la_OBJECTS = imCallbk.lo imDefFlt.lo imDefIc.lo imDefIm.lo \ imRm.lo imThaiFlt.lo imThaiIc.lo imThaiIm.lo imTrans.lo \ imTransR.lo imTrX.lo ximcp_la_OBJECTS = $(am_ximcp_la_OBJECTS) -ximcp_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(ximcp_la_LDFLAGS) \ - $(LDFLAGS) -o $@ +ximcp_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(ximcp_la_LDFLAGS) $(LDFLAGS) -o $@ @XLIB_LOADABLE_I18N_TRUE@am_ximcp_la_rpath = -rpath $(commonlibdir) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 depcomp = $(SHELL) $(top_srcdir)/depcomp @@ -99,10 +102,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libximcp_la_SOURCES) $(ximcp_la_SOURCES) DIST_SOURCES = $(libximcp_la_SOURCES) $(ximcp_la_SOURCES) ETAGS = etags @@ -112,6 +127,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -188,6 +204,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -398,9 +415,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libximcp.la: $(libximcp_la_OBJECTS) $(libximcp_la_DEPENDENCIES) - $(LINK) $(am_libximcp_la_rpath) $(libximcp_la_OBJECTS) $(libximcp_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libximcp_la_rpath) $(libximcp_la_OBJECTS) $(libximcp_la_LIBADD) $(LIBS) ximcp.la: $(ximcp_la_OBJECTS) $(ximcp_la_DEPENDENCIES) - $(ximcp_la_LINK) $(am_ximcp_la_rpath) $(ximcp_la_OBJECTS) $(ximcp_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(ximcp_la_LINK) $(am_ximcp_la_rpath) $(ximcp_la_OBJECTS) $(ximcp_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -436,22 +453,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/imTransR.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/modules/lc/Makefile.in b/libX11/modules/lc/Makefile.in index 56298b0cd..dadee07f2 100644 --- a/libX11/modules/lc/Makefile.in +++ b/libX11/modules/lc/Makefile.in @@ -45,6 +45,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -92,6 +98,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -168,6 +175,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/modules/lc/Utf8/Makefile.in b/libX11/modules/lc/Utf8/Makefile.in index 90d470ac9..4078c1c7f 100644 --- a/libX11/modules/lc/Utf8/Makefile.in +++ b/libX11/modules/lc/Utf8/Makefile.in @@ -73,15 +73,19 @@ libxlcUTF8Load_la_LIBADD = am__objects_1 = lcUTF8Load.lo am_libxlcUTF8Load_la_OBJECTS = $(am__objects_1) libxlcUTF8Load_la_OBJECTS = $(am_libxlcUTF8Load_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libxlcUTF8Load_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@xlcUTF8Load_la_DEPENDENCIES = \ @XLIB_LOADABLE_I18N_TRUE@ $(am__DEPENDENCIES_1) am_xlcUTF8Load_la_OBJECTS = lcUTF8Load.lo xlcUTF8Load_la_OBJECTS = $(am_xlcUTF8Load_la_OBJECTS) -xlcUTF8Load_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ - $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(xlcUTF8Load_la_LDFLAGS) $(LDFLAGS) -o $@ +xlcUTF8Load_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC \ + $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) --mode=link $(CCLD) \ + $(AM_CFLAGS) $(CFLAGS) $(xlcUTF8Load_la_LDFLAGS) $(LDFLAGS) -o \ + $@ @XLIB_LOADABLE_I18N_TRUE@am_xlcUTF8Load_la_rpath = -rpath \ @XLIB_LOADABLE_I18N_TRUE@ $(commonlibdir) DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 @@ -90,10 +94,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxlcUTF8Load_la_SOURCES) $(xlcUTF8Load_la_SOURCES) DIST_SOURCES = $(libxlcUTF8Load_la_SOURCES) $(xlcUTF8Load_la_SOURCES) ETAGS = etags @@ -103,6 +119,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -179,6 +196,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -364,9 +382,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxlcUTF8Load.la: $(libxlcUTF8Load_la_OBJECTS) $(libxlcUTF8Load_la_DEPENDENCIES) - $(LINK) $(am_libxlcUTF8Load_la_rpath) $(libxlcUTF8Load_la_OBJECTS) $(libxlcUTF8Load_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libxlcUTF8Load_la_rpath) $(libxlcUTF8Load_la_OBJECTS) $(libxlcUTF8Load_la_LIBADD) $(LIBS) xlcUTF8Load.la: $(xlcUTF8Load_la_OBJECTS) $(xlcUTF8Load_la_DEPENDENCIES) - $(xlcUTF8Load_la_LINK) $(am_xlcUTF8Load_la_rpath) $(xlcUTF8Load_la_OBJECTS) $(xlcUTF8Load_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(xlcUTF8Load_la_LINK) $(am_xlcUTF8Load_la_rpath) $(xlcUTF8Load_la_OBJECTS) $(xlcUTF8Load_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -377,22 +395,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lcUTF8Load.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/modules/lc/def/Makefile.in b/libX11/modules/lc/def/Makefile.in index 75df11857..b37cec681 100644 --- a/libX11/modules/lc/def/Makefile.in +++ b/libX11/modules/lc/def/Makefile.in @@ -73,13 +73,16 @@ libxlcDef_la_LIBADD = am__objects_1 = lcDefConv.lo am_libxlcDef_la_OBJECTS = $(am__objects_1) libxlcDef_la_OBJECTS = $(am_libxlcDef_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libxlcDef_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@xlcDef_la_DEPENDENCIES = \ @XLIB_LOADABLE_I18N_TRUE@ $(am__DEPENDENCIES_1) am_xlcDef_la_OBJECTS = lcDefConv.lo xlcDef_la_OBJECTS = $(am_xlcDef_la_OBJECTS) -xlcDef_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +xlcDef_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(xlcDef_la_LDFLAGS) $(LDFLAGS) -o $@ @XLIB_LOADABLE_I18N_TRUE@am_xlcDef_la_rpath = -rpath $(commonlibdir) @@ -89,10 +92,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxlcDef_la_SOURCES) $(xlcDef_la_SOURCES) DIST_SOURCES = $(libxlcDef_la_SOURCES) $(xlcDef_la_SOURCES) ETAGS = etags @@ -102,6 +117,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -178,6 +194,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -362,9 +379,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxlcDef.la: $(libxlcDef_la_OBJECTS) $(libxlcDef_la_DEPENDENCIES) - $(LINK) $(am_libxlcDef_la_rpath) $(libxlcDef_la_OBJECTS) $(libxlcDef_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libxlcDef_la_rpath) $(libxlcDef_la_OBJECTS) $(libxlcDef_la_LIBADD) $(LIBS) xlcDef.la: $(xlcDef_la_OBJECTS) $(xlcDef_la_DEPENDENCIES) - $(xlcDef_la_LINK) $(am_xlcDef_la_rpath) $(xlcDef_la_OBJECTS) $(xlcDef_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(xlcDef_la_LINK) $(am_xlcDef_la_rpath) $(xlcDef_la_OBJECTS) $(xlcDef_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -375,22 +392,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lcDefConv.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/modules/lc/gen/Makefile.in b/libX11/modules/lc/gen/Makefile.in index 3a3175934..6e2e5229e 100644 --- a/libX11/modules/lc/gen/Makefile.in +++ b/libX11/modules/lc/gen/Makefile.in @@ -73,13 +73,16 @@ libxlibi18n_la_LIBADD = am__objects_1 = lcGenConv.lo am_libxlibi18n_la_OBJECTS = $(am__objects_1) libxlibi18n_la_OBJECTS = $(am_libxlibi18n_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libxlibi18n_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@xlibi18n_la_DEPENDENCIES = \ @XLIB_LOADABLE_I18N_TRUE@ $(am__DEPENDENCIES_1) am_xlibi18n_la_OBJECTS = lcGenConv.lo xlibi18n_la_OBJECTS = $(am_xlibi18n_la_OBJECTS) -xlibi18n_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +xlibi18n_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(xlibi18n_la_LDFLAGS) $(LDFLAGS) -o $@ @XLIB_LOADABLE_I18N_TRUE@am_xlibi18n_la_rpath = -rpath $(commonlibdir) @@ -89,10 +92,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxlibi18n_la_SOURCES) $(xlibi18n_la_SOURCES) DIST_SOURCES = $(libxlibi18n_la_SOURCES) $(xlibi18n_la_SOURCES) ETAGS = etags @@ -102,6 +117,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -178,6 +194,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -362,9 +379,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxlibi18n.la: $(libxlibi18n_la_OBJECTS) $(libxlibi18n_la_DEPENDENCIES) - $(LINK) $(am_libxlibi18n_la_rpath) $(libxlibi18n_la_OBJECTS) $(libxlibi18n_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libxlibi18n_la_rpath) $(libxlibi18n_la_OBJECTS) $(libxlibi18n_la_LIBADD) $(LIBS) xlibi18n.la: $(xlibi18n_la_OBJECTS) $(xlibi18n_la_DEPENDENCIES) - $(xlibi18n_la_LINK) $(am_xlibi18n_la_rpath) $(xlibi18n_la_OBJECTS) $(xlibi18n_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(xlibi18n_la_LINK) $(am_xlibi18n_la_rpath) $(xlibi18n_la_OBJECTS) $(xlibi18n_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -375,22 +392,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lcGenConv.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/modules/lc/xlocale/Makefile.in b/libX11/modules/lc/xlocale/Makefile.in index 7da4eda77..7c947ee43 100644 --- a/libX11/modules/lc/xlocale/Makefile.in +++ b/libX11/modules/lc/xlocale/Makefile.in @@ -73,13 +73,16 @@ libxlocale_la_LIBADD = am__objects_1 = lcEuc.lo lcJis.lo lcSjis.lo am_libxlocale_la_OBJECTS = $(am__objects_1) libxlocale_la_OBJECTS = $(am_libxlocale_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libxlocale_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@xlocale_la_DEPENDENCIES = \ @XLIB_LOADABLE_I18N_TRUE@ $(am__DEPENDENCIES_1) am_xlocale_la_OBJECTS = lcEuc.lo lcJis.lo lcSjis.lo xlocale_la_OBJECTS = $(am_xlocale_la_OBJECTS) -xlocale_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +xlocale_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(xlocale_la_LDFLAGS) $(LDFLAGS) -o $@ @XLIB_LOADABLE_I18N_TRUE@am_xlocale_la_rpath = -rpath $(commonlibdir) @@ -89,10 +92,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxlocale_la_SOURCES) $(xlocale_la_SOURCES) DIST_SOURCES = $(libxlocale_la_SOURCES) $(xlocale_la_SOURCES) ETAGS = etags @@ -102,6 +117,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -178,6 +194,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -364,9 +381,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxlocale.la: $(libxlocale_la_OBJECTS) $(libxlocale_la_DEPENDENCIES) - $(LINK) $(am_libxlocale_la_rpath) $(libxlocale_la_OBJECTS) $(libxlocale_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libxlocale_la_rpath) $(libxlocale_la_OBJECTS) $(libxlocale_la_LIBADD) $(LIBS) xlocale.la: $(xlocale_la_OBJECTS) $(xlocale_la_DEPENDENCIES) - $(xlocale_la_LINK) $(am_xlocale_la_rpath) $(xlocale_la_OBJECTS) $(xlocale_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(xlocale_la_LINK) $(am_xlocale_la_rpath) $(xlocale_la_OBJECTS) $(xlocale_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -379,22 +396,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lcSjis.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/modules/om/Makefile.in b/libX11/modules/om/Makefile.in index 6d393ec1c..e03b58a83 100644 --- a/libX11/modules/om/Makefile.in +++ b/libX11/modules/om/Makefile.in @@ -45,6 +45,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -92,6 +98,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -168,6 +175,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ diff --git a/libX11/modules/om/generic/Makefile.in b/libX11/modules/om/generic/Makefile.in index a10a216ac..e39802b44 100644 --- a/libX11/modules/om/generic/Makefile.in +++ b/libX11/modules/om/generic/Makefile.in @@ -74,6 +74,9 @@ am__objects_1 = omDefault.lo omGeneric.lo omImText.lo omText.lo \ omTextEsc.lo omTextExt.lo omTextPer.lo omXChar.lo am_libxomGeneric_la_OBJECTS = $(am__objects_1) libxomGeneric_la_OBJECTS = $(am_libxomGeneric_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent @XLIB_LOADABLE_I18N_FALSE@am_libxomGeneric_la_rpath = am__DEPENDENCIES_1 = @XLIB_LOADABLE_I18N_TRUE@xomGeneric_la_DEPENDENCIES = \ @@ -81,7 +84,7 @@ am__DEPENDENCIES_1 = am_xomGeneric_la_OBJECTS = omDefault.lo omGeneric.lo omImText.lo \ omText.lo omTextEsc.lo omTextExt.lo omTextPer.lo omXChar.lo xomGeneric_la_OBJECTS = $(am_xomGeneric_la_OBJECTS) -xomGeneric_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +xomGeneric_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(xomGeneric_la_LDFLAGS) $(LDFLAGS) -o $@ @XLIB_LOADABLE_I18N_TRUE@am_xomGeneric_la_rpath = -rpath \ @@ -92,10 +95,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxomGeneric_la_SOURCES) $(xomGeneric_la_SOURCES) DIST_SOURCES = $(libxomGeneric_la_SOURCES) $(xomGeneric_la_SOURCES) ETAGS = etags @@ -105,6 +120,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -181,6 +197,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -374,9 +391,9 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxomGeneric.la: $(libxomGeneric_la_OBJECTS) $(libxomGeneric_la_DEPENDENCIES) - $(LINK) $(am_libxomGeneric_la_rpath) $(libxomGeneric_la_OBJECTS) $(libxomGeneric_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(am_libxomGeneric_la_rpath) $(libxomGeneric_la_OBJECTS) $(libxomGeneric_la_LIBADD) $(LIBS) xomGeneric.la: $(xomGeneric_la_OBJECTS) $(xomGeneric_la_DEPENDENCIES) - $(xomGeneric_la_LINK) $(am_xomGeneric_la_rpath) $(xomGeneric_la_OBJECTS) $(xomGeneric_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(xomGeneric_la_LINK) $(am_xomGeneric_la_rpath) $(xomGeneric_la_OBJECTS) $(xomGeneric_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -394,22 +411,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/omXChar.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/nls/C/Makefile.in b/libX11/nls/C/Makefile.in index cec6e07b6..6e3d12a7f 100644 --- a/libX11/nls/C/Makefile.in +++ b/libX11/nls/C/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/Makefile.am b/libX11/nls/Makefile.am index d6ec4e142..b4d57ca5e 100644 --- a/libX11/nls/Makefile.am +++ b/libX11/nls/Makefile.am @@ -75,19 +75,19 @@ SUBDIRS= \ include $(top_srcdir)/cpprules.in locale.alias: locale.alias.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.alias.pre | $(CPP_SED_MAGIC) > locale.alias.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.alias.pre | $(CPP_SED_MAGIC) > locale.alias.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < locale.alias.l1 > locale.alias.l2 cat locale.alias.l2 locale.alias.l1 > locale.alias compose.dir: compose.dir.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/compose.dir.pre | $(CPP_SED_MAGIC) > compose.dir.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/compose.dir.pre | $(CPP_SED_MAGIC) > compose.dir.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < compose.dir.l1 > compose.dir.l2 cat compose.dir.l2 compose.dir.l1 > compose.dir locale.dir: locale.dir.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.dir.pre | $(CPP_SED_MAGIC) > locale.dir.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.dir.pre | $(CPP_SED_MAGIC) > locale.dir.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < locale.dir.l1 > locale.dir.l2 cat locale.dir.l2 locale.dir.l1 > locale.dir diff --git a/libX11/nls/Makefile.in b/libX11/nls/Makefile.in index 395bcb21c..ca234e4a2 100644 --- a/libX11/nls/Makefile.in +++ b/libX11/nls/Makefile.in @@ -51,6 +51,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = RECURSIVE_TARGETS = all-recursive check-recursive dvi-recursive \ @@ -121,6 +127,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -197,6 +204,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -373,6 +381,11 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; all: all-recursive .SUFFIXES: @@ -747,22 +760,22 @@ uninstall-am: uninstall-x11localeDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ locale.alias: locale.alias.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.alias.pre | $(CPP_SED_MAGIC) > locale.alias.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.alias.pre | $(CPP_SED_MAGIC) > locale.alias.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < locale.alias.l1 > locale.alias.l2 cat locale.alias.l2 locale.alias.l1 > locale.alias compose.dir: compose.dir.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/compose.dir.pre | $(CPP_SED_MAGIC) > compose.dir.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/compose.dir.pre | $(CPP_SED_MAGIC) > compose.dir.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < compose.dir.l1 > compose.dir.l2 cat compose.dir.l2 compose.dir.l1 > compose.dir locale.dir: locale.dir.pre - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.dir.pre | $(CPP_SED_MAGIC) > locale.dir.l1 + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $(srcdir)/locale.dir.pre | $(CPP_SED_MAGIC) > locale.dir.l1 sed -e '/^[^#][^ ]*:/s/://' -e '/^[^#].*[ ].*:/d' \ < locale.dir.l1 > locale.dir.l2 cat locale.dir.l2 locale.dir.l1 > locale.dir diff --git a/libX11/nls/am_ET.UTF-8/Makefile.in b/libX11/nls/am_ET.UTF-8/Makefile.in index 1614e9515..b7d905c4b 100644 --- a/libX11/nls/am_ET.UTF-8/Makefile.in +++ b/libX11/nls/am_ET.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/armscii-8/Makefile.in b/libX11/nls/armscii-8/Makefile.in index 25fa11062..c2817ae08 100644 --- a/libX11/nls/armscii-8/Makefile.in +++ b/libX11/nls/armscii-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/el_GR.UTF-8/Compose.pre b/libX11/nls/el_GR.UTF-8/Compose.pre index 776919428..c00acb00d 100644 --- a/libX11/nls/el_GR.UTF-8/Compose.pre +++ b/libX11/nls/el_GR.UTF-8/Compose.pre @@ -1923,10 +1923,10 @@ XCOMM Miscellaneous extensions. <dead_acute> <underscore> : "´" acute <dead_tilde> <underscore> : "~" asciitilde -<Multi_key> <less> <apostrophe> : "‘" leftsinglequotemark -<Multi_key> <apostrophe> <less> : "‘" leftsinglequotemark -<Multi_key> <greater> <apostrophe> : "’" rightsinglequotemark -<Multi_key> <apostrophe> <greater> : "’" rightsinglequotemark +<Multi_key> <less> <apostrophe> <space> : "‘" leftsinglequotemark +<Multi_key> <apostrophe> <less> <space> : "‘" leftsinglequotemark +<Multi_key> <greater> <apostrophe> <space> : "’" rightsinglequotemark +<Multi_key> <apostrophe> <greater> <space> : "’" rightsinglequotemark <Multi_key> <asciitilde> <asciitilde> : "―" Greek_horizbar <Multi_key> <asciicircum> <asciicircum> : "˘" breve diff --git a/libX11/nls/el_GR.UTF-8/Makefile.in b/libX11/nls/el_GR.UTF-8/Makefile.in index 3b9745159..f3c6566cb 100644 --- a/libX11/nls/el_GR.UTF-8/Makefile.in +++ b/libX11/nls/el_GR.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/en_US.UTF-8/Compose.pre b/libX11/nls/en_US.UTF-8/Compose.pre index a4174bbe3..1edfdebb9 100644 --- a/libX11/nls/en_US.UTF-8/Compose.pre +++ b/libX11/nls/en_US.UTF-8/Compose.pre @@ -5164,3 +5164,208 @@ XCOMM <dead_ogonek> <dead_macron> <o> : "Ç" U01ED # LATIN SMALL LETTER O WITH OGONEK AND MACRON <dead_tilde> <dead_macron> <O> : "Ȭ" U022C # LATIN CAPITAL LETTER O WITH TILDE AND MACRON <dead_tilde> <dead_macron> <o> : "È" U022D # LATIN SMALL LETTER O WITH TILDE AND MACRON + +XCOMM +XCOMM Cyrillic NFDs +XCOMM + +<dead_doublegrave> <Cyrillic_a> : "аÌ" # CYRILLIC SMALL LETTER A WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_a> : "аÌ" # CYRILLIC SMALL LETTER A WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_a> : "а̑" # CYRILLIC SMALL LETTER A WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_a> : "а̀" # CYRILLIC SMALL LETTER A WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_a> : "а̀" # CYRILLIC SMALL LETTER A WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_a> : "аÌ" # CYRILLIC SMALL LETTER A WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_a> : "аÌ" # CYRILLIC SMALL LETTER A WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_a> : "аÌ" # CYRILLIC SMALL LETTER A WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_a> : "а̄" # CYRILLIC SMALL LETTER A WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_a> : "а̄" # CYRILLIC SMALL LETTER A WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_a> : "а̄" # CYRILLIC SMALL LETTER A WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_a> : "а̂" # CYRILLIC SMALL LETTER A WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_a> : "а̂" # CYRILLIC SMALL LETTER A WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_A> : "ÐÌ" # CYRILLIC CAPITAL LETTER A WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_A> : "ÐÌ" # CYRILLIC CAPITAL LETTER A WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_A> : "ÐÌ‘" # CYRILLIC CAPITAL LETTER A WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_A> : "ÐÌ€" # CYRILLIC CAPITAL LETTER A WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_A> : "ÐÌ€" # CYRILLIC CAPITAL LETTER A WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_A> : "ÐÌ" # CYRILLIC CAPITAL LETTER A WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_A> : "ÐÌ" # CYRILLIC CAPITAL LETTER A WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_A> : "ÐÌ" # CYRILLIC CAPITAL LETTER A WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_A> : "ÐÌ„" # CYRILLIC CAPITAL LETTER A WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_A> : "ÐÌ„" # CYRILLIC CAPITAL LETTER A WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_A> : "ÐÌ„" # CYRILLIC CAPITAL LETTER A WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_A> : "ÐÌ‚" # CYRILLIC CAPITAL LETTER A WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_A> : "ÐÌ‚" # CYRILLIC CAPITAL LETTER A WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_ie> : "еÌ" # CYRILLIC SMALL LETTER IE WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_ie> : "еÌ" # CYRILLIC SMALL LETTER IE WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_ie> : "е̑" # CYRILLIC SMALL LETTER IE WITH COMBINING INVERTED BREVE + +<dead_acute> <Cyrillic_ie> : "еÌ" # CYRILLIC SMALL LETTER IE WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_ie> : "еÌ" # CYRILLIC SMALL LETTER IE WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_ie> : "еÌ" # CYRILLIC SMALL LETTER IE WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_ie> : "е̄" # CYRILLIC SMALL LETTER IE WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_ie> : "е̄" # CYRILLIC SMALL LETTER IE WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_ie> : "е̄" # CYRILLIC SMALL LETTER IE WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_ie> : "е̂" # CYRILLIC SMALL LETTER IE WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_ie> : "е̂" # CYRILLIC SMALL LETTER IE WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_IE> : "ЕÌ" # CYRILLIC CAPITAL LETTER IE WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_IE> : "ЕÌ" # CYRILLIC CAPITAL LETTER IE WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_IE> : "Е̑" # CYRILLIC CAPITAL LETTER IE WITH COMBINING INVERTED BREVE + +<dead_acute> <Cyrillic_IE> : "ЕÌ" # CYRILLIC CAPITAL LETTER IE WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_IE> : "ЕÌ" # CYRILLIC CAPITAL LETTER IE WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_IE> : "ЕÌ" # CYRILLIC CAPITAL LETTER IE WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_IE> : "Е̄" # CYRILLIC CAPITAL LETTER IE WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_IE> : "Е̄" # CYRILLIC CAPITAL LETTER IE WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_IE> : "Е̄" # CYRILLIC CAPITAL LETTER IE WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_IE> : "Е̂" # CYRILLIC CAPITAL LETTER IE WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_IE> : "Е̂" # CYRILLIC CAPITAL LETTER IE WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_i> : "иÌ" # CYRILLIC SMALL LETTER I WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_i> : "иÌ" # CYRILLIC SMALL LETTER I WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_i> : "и̑" # CYRILLIC SMALL LETTER I WITH COMBINING INVERTED BREVE + +<dead_acute> <Cyrillic_i> : "иÌ" # CYRILLIC SMALL LETTER I WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_i> : "иÌ" # CYRILLIC SMALL LETTER I WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_i> : "иÌ" # CYRILLIC SMALL LETTER I WITH COMBINING ACUTE ACCENT + +<dead_circumflex> <Cyrillic_i> : "и̂" # CYRILLIC SMALL LETTER I WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_i> : "и̂" # CYRILLIC SMALL LETTER I WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_I> : "ИÌ" # CYRILLIC CAPITAL LETTER I WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_I> : "ИÌ" # CYRILLIC CAPITAL LETTER I WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_I> : "И̑" # CYRILLIC CAPITAL LETTER I WITH COMBINING INVERTED BREVE + +<dead_acute> <Cyrillic_I> : "ИÌ" # CYRILLIC CAPITAL LETTER I WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_I> : "ИÌ" # CYRILLIC CAPITAL LETTER I WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_I> : "ИÌ" # CYRILLIC CAPITAL LETTER I WITH COMBINING ACUTE ACCENT + +<dead_circumflex> <Cyrillic_I> : "И̂" # CYRILLIC CAPITAL LETTER I WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_I> : "И̂" # CYRILLIC CAPITAL LETTER I WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_o> : "оÌ" # CYRILLIC SMALL LETTER O WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_o> : "оÌ" # CYRILLIC SMALL LETTER O WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_o> : "о̑" # CYRILLIC SMALL LETTER O WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_o> : "о̀" # CYRILLIC SMALL LETTER O WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_o> : "о̀" # CYRILLIC SMALL LETTER O WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_o> : "оÌ" # CYRILLIC SMALL LETTER O WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_o> : "оÌ" # CYRILLIC SMALL LETTER O WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_o> : "оÌ" # CYRILLIC SMALL LETTER O WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_o> : "о̄" # CYRILLIC SMALL LETTER O WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_o> : "о̄" # CYRILLIC SMALL LETTER O WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_o> : "о̄" # CYRILLIC SMALL LETTER O WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_o> : "о̂" # CYRILLIC SMALL LETTER O WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_o> : "о̂" # CYRILLIC SMALL LETTER O WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_O> : "ОÌ" # CYRILLIC CAPITAL LETTER O WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_O> : "ОÌ" # CYRILLIC CAPITAL LETTER O WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_O> : "О̑" # CYRILLIC CAPITAL LETTER O WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_O> : "О̀" # CYRILLIC CAPITAL LETTER O WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_O> : "О̀" # CYRILLIC CAPITAL LETTER O WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_O> : "ОÌ" # CYRILLIC CAPITAL LETTER O WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_O> : "ОÌ" # CYRILLIC CAPITAL LETTER O WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_O> : "ОÌ" # CYRILLIC CAPITAL LETTER O WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_O> : "О̄" # CYRILLIC CAPITAL LETTER O WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_O> : "О̄" # CYRILLIC CAPITAL LETTER O WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_O> : "О̄" # CYRILLIC CAPITAL LETTER O WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_O> : "О̂" # CYRILLIC CAPITAL LETTER O WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_O> : "О̂" # CYRILLIC CAPITAL LETTER O WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_u> : "уÌ" # CYRILLIC SMALL LETTER U WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_u> : "уÌ" # CYRILLIC SMALL LETTER U WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_u> : "у̑" # CYRILLIC SMALL LETTER U WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_u> : "у̀" # CYRILLIC SMALL LETTER U WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_u> : "у̀" # CYRILLIC SMALL LETTER U WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_u> : "уÌ" # CYRILLIC SMALL LETTER U WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_u> : "уÌ" # CYRILLIC SMALL LETTER U WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_u> : "уÌ" # CYRILLIC SMALL LETTER U WITH COMBINING ACUTE ACCENT + +<dead_circumflex> <Cyrillic_u> : "у̂" # CYRILLIC SMALL LETTER U WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_u> : "у̂" # CYRILLIC SMALL LETTER U WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_U> : "УÌ" # CYRILLIC CAPITAL LETTER U WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_U> : "УÌ" # CYRILLIC CAPITAL LETTER U WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_U> : "У̑" # CYRILLIC CAPITAL LETTER U WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_U> : "У̀" # CYRILLIC CAPITAL LETTER U WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_U> : "У̀" # CYRILLIC CAPITAL LETTER U WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_U> : "УÌ" # CYRILLIC CAPITAL LETTER U WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_U> : "УÌ" # CYRILLIC CAPITAL LETTER U WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_U> : "УÌ" # CYRILLIC CAPITAL LETTER U WITH COMBINING ACUTE ACCENT + +<dead_circumflex> <Cyrillic_U> : "У̂" # CYRILLIC CAPITAL LETTER U WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_U> : "У̂" # CYRILLIC CAPITAL LETTER U WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_er> : "Ñ€Ì" # CYRILLIC SMALL LETTER ER WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_er> : "Ñ€Ì" # CYRILLIC SMALL LETTER ER WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_er> : "р̑" # CYRILLIC SMALL LETTER ER WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_er> : "р̀" # CYRILLIC SMALL LETTER ER WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_er> : "р̀" # CYRILLIC SMALL LETTER ER WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_er> : "Ñ€Ì" # CYRILLIC SMALL LETTER ER WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_er> : "Ñ€Ì" # CYRILLIC SMALL LETTER ER WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_er> : "Ñ€Ì" # CYRILLIC SMALL LETTER ER WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_er> : "р̄" # CYRILLIC SMALL LETTER ER WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_er> : "р̄" # CYRILLIC SMALL LETTER ER WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_er> : "р̄" # CYRILLIC SMALL LETTER ER WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_er> : "р̂" # CYRILLIC SMALL LETTER ER WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_er> : "р̂" # CYRILLIC SMALL LETTER ER WITH COMBINING CIRCUMFLEX ACCENT + +<dead_doublegrave> <Cyrillic_ER> : "Ð Ì" # CYRILLIC CAPITAL LETTER ER WITH COMBINING DOUBLE GRAVE ACCENT +<Multi_key> <grave> <grave> <Cyrillic_ER> : "Ð Ì" # CYRILLIC CAPITAL LETTER ER WITH COMBINING DOUBLE GRAVE ACCENT + +<dead_invertedbreve> <Cyrillic_ER> : "Ð Ì‘" # CYRILLIC CAPITAL LETTER ER WITH COMBINING INVERTED BREVE + +<dead_grave> <Cyrillic_ER> : "Р̀" # CYRILLIC CAPITAL LETTER ER WITH COMBINING GRAVE ACCENT +<Multi_key> <grave> <Cyrillic_ER> : "Р̀" # CYRILLIC CAPITAL LETTER ER WITH COMBINING GRAVE ACCENT + +<dead_acute> <Cyrillic_ER> : "Ð Ì" # CYRILLIC CAPITAL LETTER ER WITH COMBINING ACUTE ACCENT +<Multi_key> <acute> <Cyrillic_ER> : "Ð Ì" # CYRILLIC CAPITAL LETTER ER WITH COMBINING ACUTE ACCENT +<Multi_key> <apostrophe> <Cyrillic_ER> : "Ð Ì" # CYRILLIC CAPITAL LETTER ER WITH COMBINING ACUTE ACCENT + +<dead_macron> <Cyrillic_ER> : "Ð Ì„" # CYRILLIC CAPITAL LETTER ER WITH COMBINING MACRON +<Multi_key> <macron> <Cyrillic_ER> : "Ð Ì„" # CYRILLIC CAPITAL LETTER ER WITH COMBINING MACRON +<Multi_key> <underscore> <Cyrillic_ER> : "Ð Ì„" # CYRILLIC CAPITAL LETTER ER WITH COMBINING MACRON + +<dead_circumflex> <Cyrillic_ER> : "Ð Ì‚" # CYRILLIC CAPITAL LETTER ER WITH COMBINING CIRCUMFLEX ACCENT +<Multi_key> <asciicircum> <Cyrillic_ER> : "Ð Ì‚" # CYRILLIC CAPITAL LETTER ER WITH COMBINING CIRCUMFLEX ACCENT + diff --git a/libX11/nls/en_US.UTF-8/Makefile.in b/libX11/nls/en_US.UTF-8/Makefile.in index 583ae36c4..6eca0a155 100644 --- a/libX11/nls/en_US.UTF-8/Makefile.in +++ b/libX11/nls/en_US.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/fi_FI.UTF-8/Makefile.in b/libX11/nls/fi_FI.UTF-8/Makefile.in index 24d34cf8a..98120d6af 100644 --- a/libX11/nls/fi_FI.UTF-8/Makefile.in +++ b/libX11/nls/fi_FI.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/georgian-academy/Makefile.in b/libX11/nls/georgian-academy/Makefile.in index f088237b1..18909f216 100644 --- a/libX11/nls/georgian-academy/Makefile.in +++ b/libX11/nls/georgian-academy/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/georgian-ps/Makefile.in b/libX11/nls/georgian-ps/Makefile.in index 3e3c69817..bc8a90ad9 100644 --- a/libX11/nls/georgian-ps/Makefile.in +++ b/libX11/nls/georgian-ps/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ibm-cp1133/Makefile.in b/libX11/nls/ibm-cp1133/Makefile.in index 226eb48d4..261461814 100644 --- a/libX11/nls/ibm-cp1133/Makefile.in +++ b/libX11/nls/ibm-cp1133/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iscii-dev/Makefile.in b/libX11/nls/iscii-dev/Makefile.in index 9d4cb8dc2..28e202ddc 100644 --- a/libX11/nls/iscii-dev/Makefile.in +++ b/libX11/nls/iscii-dev/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/isiri-3342/Makefile.in b/libX11/nls/isiri-3342/Makefile.in index 85004fa76..39a3d8478 100644 --- a/libX11/nls/isiri-3342/Makefile.in +++ b/libX11/nls/isiri-3342/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-1/Makefile.in b/libX11/nls/iso8859-1/Makefile.in index 2d1094d5c..e5f38e8d8 100644 --- a/libX11/nls/iso8859-1/Makefile.in +++ b/libX11/nls/iso8859-1/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-10/Makefile.in b/libX11/nls/iso8859-10/Makefile.in index 1f83b30d0..1255f6ed7 100644 --- a/libX11/nls/iso8859-10/Makefile.in +++ b/libX11/nls/iso8859-10/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-11/Makefile.in b/libX11/nls/iso8859-11/Makefile.in index 3167164a6..ea9877b37 100644 --- a/libX11/nls/iso8859-11/Makefile.in +++ b/libX11/nls/iso8859-11/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-13/Makefile.in b/libX11/nls/iso8859-13/Makefile.in index 53f7208c7..ab23c10e3 100644 --- a/libX11/nls/iso8859-13/Makefile.in +++ b/libX11/nls/iso8859-13/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-14/Makefile.in b/libX11/nls/iso8859-14/Makefile.in index c129fb119..38e314b8a 100644 --- a/libX11/nls/iso8859-14/Makefile.in +++ b/libX11/nls/iso8859-14/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-15/Makefile.in b/libX11/nls/iso8859-15/Makefile.in index bd89074ab..51c955a31 100644 --- a/libX11/nls/iso8859-15/Makefile.in +++ b/libX11/nls/iso8859-15/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-2/Compose.pre b/libX11/nls/iso8859-2/Compose.pre index b9026b4f2..5d0b697c6 100644 --- a/libX11/nls/iso8859-2/Compose.pre +++ b/libX11/nls/iso8859-2/Compose.pre @@ -139,8 +139,8 @@ XCOMM are for compose sequences. <Multi_key> <apostrophe> <z> : "\274" zacute <Multi_key> <z> <acute> : "\274" zacute <Multi_key> <acute> <z> : "\274" zacute -<Multi_key> <apostrophe> <apostrophe> : "\275" doubleacute -<Multi_key> <acute> <acute> : "\275" doubleacute +<Multi_key> <apostrophe> <apostrophe> <space> : "\275" doubleacute +<Multi_key> <acute> <acute> <space> : "\275" doubleacute <Multi_key> <z> <less> : "\276" zcaron <Multi_key> <less> <z> : "\276" zcaron <Multi_key> <z> <caron> : "\276" zcaron diff --git a/libX11/nls/iso8859-2/Makefile.in b/libX11/nls/iso8859-2/Makefile.in index 97489c066..bebfc47e2 100644 --- a/libX11/nls/iso8859-2/Makefile.in +++ b/libX11/nls/iso8859-2/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-3/Makefile.in b/libX11/nls/iso8859-3/Makefile.in index f7650dbb9..330431f0b 100644 --- a/libX11/nls/iso8859-3/Makefile.in +++ b/libX11/nls/iso8859-3/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-4/Makefile.in b/libX11/nls/iso8859-4/Makefile.in index 62327ec8b..9b9b7ab7e 100644 --- a/libX11/nls/iso8859-4/Makefile.in +++ b/libX11/nls/iso8859-4/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-5/Makefile.in b/libX11/nls/iso8859-5/Makefile.in index a68fb6de6..d8e2fe680 100644 --- a/libX11/nls/iso8859-5/Makefile.in +++ b/libX11/nls/iso8859-5/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-6/Makefile.in b/libX11/nls/iso8859-6/Makefile.in index 5c3a2551f..d6ccfd2eb 100644 --- a/libX11/nls/iso8859-6/Makefile.in +++ b/libX11/nls/iso8859-6/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-7/Makefile.in b/libX11/nls/iso8859-7/Makefile.in index 78d7ed686..4c3a4cf2c 100644 --- a/libX11/nls/iso8859-7/Makefile.in +++ b/libX11/nls/iso8859-7/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-8/Makefile.in b/libX11/nls/iso8859-8/Makefile.in index a2bd17854..515af8b3f 100644 --- a/libX11/nls/iso8859-8/Makefile.in +++ b/libX11/nls/iso8859-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-9/Makefile.in b/libX11/nls/iso8859-9/Makefile.in index cd5883edd..0f8e0fbd8 100644 --- a/libX11/nls/iso8859-9/Makefile.in +++ b/libX11/nls/iso8859-9/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/iso8859-9e/Makefile.in b/libX11/nls/iso8859-9e/Makefile.in index d80bb56dc..f8b196c7f 100644 --- a/libX11/nls/iso8859-9e/Makefile.in +++ b/libX11/nls/iso8859-9e/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja.JIS/Makefile.in b/libX11/nls/ja.JIS/Makefile.in index 426de5761..5591cbf54 100644 --- a/libX11/nls/ja.JIS/Makefile.in +++ b/libX11/nls/ja.JIS/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja.S90/Makefile.in b/libX11/nls/ja.S90/Makefile.in index 3d4d40e0d..6ba8cc3e5 100644 --- a/libX11/nls/ja.S90/Makefile.in +++ b/libX11/nls/ja.S90/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja.SJIS/Makefile.in b/libX11/nls/ja.SJIS/Makefile.in index 38e577a18..390dc6386 100644 --- a/libX11/nls/ja.SJIS/Makefile.in +++ b/libX11/nls/ja.SJIS/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja.U90/Makefile.in b/libX11/nls/ja.U90/Makefile.in index ecc255f19..277dce85f 100644 --- a/libX11/nls/ja.U90/Makefile.in +++ b/libX11/nls/ja.U90/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja/Makefile.in b/libX11/nls/ja/Makefile.in index 03327f01f..6cd0ede04 100644 --- a/libX11/nls/ja/Makefile.in +++ b/libX11/nls/ja/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ja_JP.UTF-8/Makefile.in b/libX11/nls/ja_JP.UTF-8/Makefile.in index 36304aea5..857368d34 100644 --- a/libX11/nls/ja_JP.UTF-8/Makefile.in +++ b/libX11/nls/ja_JP.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ko/Makefile.in b/libX11/nls/ko/Makefile.in index c50dc9806..befcc8180 100644 --- a/libX11/nls/ko/Makefile.in +++ b/libX11/nls/ko/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ko_KR.UTF-8/Makefile.in b/libX11/nls/ko_KR.UTF-8/Makefile.in index 674e83af0..4cb0648ba 100644 --- a/libX11/nls/ko_KR.UTF-8/Makefile.in +++ b/libX11/nls/ko_KR.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/koi8-c/Makefile.in b/libX11/nls/koi8-c/Makefile.in index 589404f3a..3f08bbb84 100644 --- a/libX11/nls/koi8-c/Makefile.in +++ b/libX11/nls/koi8-c/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/koi8-r/Makefile.in b/libX11/nls/koi8-r/Makefile.in index dcd4a342e..1e3d674a7 100644 --- a/libX11/nls/koi8-r/Makefile.in +++ b/libX11/nls/koi8-r/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/koi8-u/Makefile.in b/libX11/nls/koi8-u/Makefile.in index 0bb0a023b..507a31e84 100644 --- a/libX11/nls/koi8-u/Makefile.in +++ b/libX11/nls/koi8-u/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/localerules.in b/libX11/nls/localerules.in index 6dfc7704f..9fcf5438e 100644 --- a/libX11/nls/localerules.in +++ b/libX11/nls/localerules.in @@ -6,3 +6,8 @@ dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose + +if HAVE_PERL +TESTS_ENVIRONMENT = $(PERL) +TESTS = $(top_srcdir)/nls/compose-check.pl +endif HAVE_PERL diff --git a/libX11/nls/microsoft-cp1251/Makefile.in b/libX11/nls/microsoft-cp1251/Makefile.in index 90e2af904..0f5168b4e 100644 --- a/libX11/nls/microsoft-cp1251/Makefile.in +++ b/libX11/nls/microsoft-cp1251/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/microsoft-cp1255/Makefile.in b/libX11/nls/microsoft-cp1255/Makefile.in index a2e178dbd..8d333df7e 100644 --- a/libX11/nls/microsoft-cp1255/Makefile.in +++ b/libX11/nls/microsoft-cp1255/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/microsoft-cp1256/Makefile.in b/libX11/nls/microsoft-cp1256/Makefile.in index 9ca530bf6..9285052b8 100644 --- a/libX11/nls/microsoft-cp1256/Makefile.in +++ b/libX11/nls/microsoft-cp1256/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/mulelao-1/Makefile.in b/libX11/nls/mulelao-1/Makefile.in index 0a286e584..a6636f527 100644 --- a/libX11/nls/mulelao-1/Makefile.in +++ b/libX11/nls/mulelao-1/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/nokhchi-1/Makefile.in b/libX11/nls/nokhchi-1/Makefile.in index fc03ef83a..4c2cace5c 100644 --- a/libX11/nls/nokhchi-1/Makefile.in +++ b/libX11/nls/nokhchi-1/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/pt_BR.UTF-8/Compose.pre b/libX11/nls/pt_BR.UTF-8/Compose.pre index 5c12af383..bd938aa1b 100644 --- a/libX11/nls/pt_BR.UTF-8/Compose.pre +++ b/libX11/nls/pt_BR.UTF-8/Compose.pre @@ -198,6 +198,7 @@ XCOMM There are some conflicts among sequences, but I left them alone. XCOMM XCOMM group 1: cluster jamos made of three basic jamos +/* The following block gets overridden by later shorter compositions <Multi_key> <U1107> <U1109> <U1100> : "á„¢" U1122 : á„‡á… á„‰á… á„€á… = á„¢á… <Multi_key> <U1107> <U1109> <U1103> : "á„£" U1123 : á„‡á… á„‰á… á„ƒá… = á„£á… <Multi_key> <U1107> <U1109> <U1107> : "ᄤ" U1124 : á„‡á… á„‰á… á„‡á… = á„¤á… @@ -220,6 +221,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <U11af> <U11ba> <U11ba> : "ᇖ" U11d6 : á…Ÿá… á†¯ á…Ÿá… á†º á…Ÿá… á†º = á…Ÿá… á‡– <Multi_key> <U11b7> <U11ba> <U11ba> : "ᇞ" U11de : á…Ÿá… á†· á…Ÿá… á†º á…Ÿá… á†º = á…Ÿá… á‡ž <Multi_key> <U11bc> <U11a8> <U11a8> : "á‡" U11ed : á…Ÿá… á†¼ á…Ÿá… á†¨ á…Ÿá… á†¨ = á…Ÿá… á‡ + */ <Multi_key> <U1100> <U1100> : "á„" U1101 : á„€á… á„€á… = á„á… <Multi_key> <U1103> <U1103> : "á„„" U1104 : á„ƒá… á„ƒá… = á„„á… <Multi_key> <U1107> <U1107> : "ᄈ" U1108 : á„‡á… á„‡á… = á„ˆá… @@ -1048,18 +1050,18 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_acute> <dead_abovering> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE <dead_acute> <Multi_key> <o> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <acute> <dead_abovering> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE -<Multi_key> <acute> <o> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE +XCOMM <Multi_key> <acute> <o> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <apostrophe> <dead_abovering> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE -<Multi_key> <apostrophe> <o> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE +XCOMM <Multi_key> <apostrophe> <o> <A> : "Ǻ" U01FA # LATIN CAPITAL LETTER A WITH RING ABOVE AND ACUTE <dead_acute> <aring> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <acute> <aring> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <apostrophe> <aring> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <dead_acute> <dead_abovering> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <dead_acute> <Multi_key> <o> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <acute> <dead_abovering> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE -<Multi_key> <acute> <o> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE +XCOMM <Multi_key> <acute> <o> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <Multi_key> <apostrophe> <dead_abovering> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE -<Multi_key> <apostrophe> <o> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE +XCOMM <Multi_key> <apostrophe> <o> <a> : "Ç»" U01FB # LATIN SMALL LETTER A WITH RING ABOVE AND ACUTE <dead_acute> <AE> : "Ǽ" U01FC # LATIN CAPITAL LETTER AE WITH ACUTE <Multi_key> <acute> <AE> : "Ǽ" U01FC # LATIN CAPITAL LETTER AE WITH ACUTE <Multi_key> <apostrophe> <AE> : "Ǽ" U01FC # LATIN CAPITAL LETTER AE WITH ACUTE @@ -1506,14 +1508,12 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <U0cc6> <U0cd6> : "ೈ" U0CC8 # KANNADA VOWEL SIGN AI <Multi_key> <U0cc6> <U0cc2> : "ೊ" U0CCA # KANNADA VOWEL SIGN O <Multi_key> <U0cca> <U0cd5> : "ೋ" U0CCB # KANNADA VOWEL SIGN OO -<Multi_key> <U0cc6> <U0cc2> <U0cd5> : "ೋ" U0CCB # KANNADA VOWEL SIGN OO <Multi_key> <U0d46> <U0d3e> : "ൊ" U0D4A # MALAYALAM VOWEL SIGN O <Multi_key> <U0d47> <U0d3e> : "ോ" U0D4B # MALAYALAM VOWEL SIGN OO <Multi_key> <U0d46> <U0d57> : "ൌ" U0D4C # MALAYALAM VOWEL SIGN AU <Multi_key> <U0dd9> <U0dca> : "à·š" U0DDA # SINHALA VOWEL SIGN DIGA KOMBUVA <Multi_key> <U0dd9> <U0dcf> : "à·œ" U0DDC # SINHALA VOWEL SIGN KOMBUVA HAA AELA-PILLA <Multi_key> <U0ddc> <U0dca> : "à·" U0DDD # SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA -<Multi_key> <U0dd9> <U0dcf> <U0dca> : "à·" U0DDD # SINHALA VOWEL SIGN KOMBUVA HAA DIGA AELA-PILLA <Multi_key> <U0dd9> <U0ddf> : "à·ž" U0DDE # SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA <Multi_key> <U0fb7> <U0f42> : "གྷ" U0F43 # TIBETAN LETTER GHA <Multi_key> <U0fb7> <U0f4c> : "à½" U0F4D # TIBETAN LETTER DDHA @@ -1555,7 +1555,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <acute> <comma> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <acute> <cedilla> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <apostrophe> <dead_cedilla> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE -<Multi_key> <apostrophe> <comma> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE +XCOMM <Multi_key> <apostrophe> <comma> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <apostrophe> <cedilla> <C> : "Ḉ" U1E08 # LATIN CAPITAL LETTER C WITH CEDILLA AND ACUTE <dead_acute> <ccedilla> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <acute> <ccedilla> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE @@ -1567,7 +1567,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <acute> <comma> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <acute> <cedilla> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <apostrophe> <dead_cedilla> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE -<Multi_key> <apostrophe> <comma> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE +XCOMM <Multi_key> <apostrophe> <comma> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE <Multi_key> <apostrophe> <cedilla> <c> : "ḉ" U1E09 # LATIN SMALL LETTER C WITH CEDILLA AND ACUTE <dead_abovedot> <D> : "Ḋ" U1E0A # LATIN CAPITAL LETTER D WITH DOT ABOVE <Multi_key> <period> <D> : "Ḋ" U1E0A # LATIN CAPITAL LETTER D WITH DOT ABOVE @@ -1906,13 +1906,13 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_abovedot> <dead_caron> <S> : "Ṧ" U1E66 # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE <dead_abovedot> <Multi_key> <c> <S> : "Ṧ" U1E66 # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE <Multi_key> <period> <dead_caron> <S> : "Ṧ" U1E66 # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE -<Multi_key> <period> <c> <S> : "Ṧ" U1E66 # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE +XCOMM <Multi_key> <period> <c> <S> : "Ṧ" U1E66 # LATIN CAPITAL LETTER S WITH CARON AND DOT ABOVE <dead_abovedot> <scaron> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE <Multi_key> <period> <scaron> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE <dead_abovedot> <dead_caron> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE -<dead_abovedot> <Multi_key> <c> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE +XCOMM <dead_abovedot> <Multi_key> <c> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE <Multi_key> <period> <dead_caron> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE -<Multi_key> <period> <c> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE +XCOMM <Multi_key> <period> <c> <s> : "á¹§" U1E67 # LATIN SMALL LETTER S WITH CARON AND DOT ABOVE <dead_abovedot> <U1e62> : "Ṩ" U1E68 # LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE <Multi_key> <period> <U1e62> : "Ṩ" U1E68 # LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE <dead_abovedot> <dead_belowdot> <S> : "Ṩ" U1E68 # LATIN CAPITAL LETTER S WITH DOT BELOW AND DOT ABOVE @@ -2119,10 +2119,10 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_acute> <Multi_key> <U> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <dead_acute> <Multi_key> <b> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <Multi_key> <acute> <dead_breve> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE -<Multi_key> <acute> <U> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE +XCOMM <Multi_key> <acute> <U> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <Multi_key> <acute> <b> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <Multi_key> <apostrophe> <dead_breve> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE -<Multi_key> <apostrophe> <U> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE +XCOMM <Multi_key> <apostrophe> <U> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <Multi_key> <apostrophe> <b> <A> : "Ắ" U1EAE # LATIN CAPITAL LETTER A WITH BREVE AND ACUTE <dead_acute> <abreve> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <Multi_key> <acute> <abreve> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE @@ -2131,10 +2131,10 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_acute> <Multi_key> <U> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <dead_acute> <Multi_key> <b> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <Multi_key> <acute> <dead_breve> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE -<Multi_key> <acute> <U> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE +XCOMM <Multi_key> <acute> <U> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <Multi_key> <acute> <b> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <Multi_key> <apostrophe> <dead_breve> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE -<Multi_key> <apostrophe> <U> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE +XCOMM <Multi_key> <apostrophe> <U> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <Multi_key> <apostrophe> <b> <a> : "ắ" U1EAF # LATIN SMALL LETTER A WITH BREVE AND ACUTE <dead_grave> <Abreve> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <Abreve> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE @@ -2142,7 +2142,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_grave> <Multi_key> <U> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE <dead_grave> <Multi_key> <b> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <dead_breve> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE -<Multi_key> <grave> <U> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE +XCOMM <Multi_key> <grave> <U> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <b> <A> : "Ằ" U1EB0 # LATIN CAPITAL LETTER A WITH BREVE AND GRAVE <dead_grave> <abreve> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <abreve> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE @@ -2150,7 +2150,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_grave> <Multi_key> <U> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE <dead_grave> <Multi_key> <b> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <dead_breve> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE -<Multi_key> <grave> <U> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE +XCOMM <Multi_key> <grave> <U> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE <Multi_key> <grave> <b> <a> : "ằ" U1EB1 # LATIN SMALL LETTER A WITH BREVE AND GRAVE <dead_hook> <Abreve> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <Abreve> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE @@ -2158,7 +2158,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_hook> <Multi_key> <U> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE <dead_hook> <Multi_key> <b> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <dead_breve> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE -<Multi_key> <question> <U> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE +XCOMM <Multi_key> <question> <U> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <b> <A> : "Ẳ" U1EB2 # LATIN CAPITAL LETTER A WITH BREVE AND HOOK ABOVE <dead_hook> <abreve> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <abreve> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE @@ -2166,7 +2166,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_hook> <Multi_key> <U> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE <dead_hook> <Multi_key> <b> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <dead_breve> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE -<Multi_key> <question> <U> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE +XCOMM <Multi_key> <question> <U> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE <Multi_key> <question> <b> <a> : "ẳ" U1EB3 # LATIN SMALL LETTER A WITH BREVE AND HOOK ABOVE <dead_tilde> <Abreve> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <Abreve> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE @@ -2174,7 +2174,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_tilde> <Multi_key> <U> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE <dead_tilde> <Multi_key> <b> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <dead_breve> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE -<Multi_key> <asciitilde> <U> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE +XCOMM <Multi_key> <asciitilde> <U> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <b> <A> : "Ẵ" U1EB4 # LATIN CAPITAL LETTER A WITH BREVE AND TILDE <dead_tilde> <abreve> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <abreve> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE @@ -2182,7 +2182,7 @@ XCOMM group 1: cluster jamos made of three basic jamos <dead_tilde> <Multi_key> <U> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE <dead_tilde> <Multi_key> <b> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <dead_breve> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE -<Multi_key> <asciitilde> <U> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE +XCOMM <Multi_key> <asciitilde> <U> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE <Multi_key> <asciitilde> <b> <a> : "ẵ" U1EB5 # LATIN SMALL LETTER A WITH BREVE AND TILDE <dead_breve> <U1ea0> : "Ặ" U1EB6 # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW <Multi_key> <U> <U1ea0> : "Ặ" U1EB6 # LATIN CAPITAL LETTER A WITH BREVE AND DOT BELOW @@ -3645,9 +3645,9 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <underscore> <parenright> : "₎" U208E # SUBSCRIPT RIGHT PARENTHESIS <Multi_key> <underbar> <parenright> : "₎" U208E # SUBSCRIPT RIGHT PARENTHESIS <dead_circumflex> <Multi_key> <S> <M> : "â„ " U2120 # SERVICE MARK -<Multi_key> <asciicircum> <S> <M> : "â„ " U2120 # SERVICE MARK +<Multi_key> <S> <M> : "â„ " U2120 # SERVICE MARK <dead_circumflex> <Multi_key> <T> <M> : "â„¢" U2122 # TRADE MARK SIGN -<Multi_key> <asciicircum> <T> <M> : "â„¢" U2122 # TRADE MARK SIGN +<Multi_key> <T> <M> : "â„¢" U2122 # TRADE MARK SIGN <Multi_key> <1> <3> : "â…“" U2153 # VULGAR FRACTION ONE THIRD <Multi_key> <2> <3> : "â…”" U2154 # VULGAR FRACTION TWO THIRDS <Multi_key> <1> <5> : "â…•" U2155 # VULGAR FRACTION ONE FIFTH @@ -4235,25 +4235,25 @@ XCOMM group 1: cluster jamos made of three basic jamos <Multi_key> <U1d157> <U1d165> : "ð…ž" U1D15E # MUSICAL SYMBOL HALF NOTE <Multi_key> <U1d158> <U1d165> : "ð…Ÿ" U1D15F # MUSICAL SYMBOL QUARTER NOTE <Multi_key> <U1d15f> <U1d16e> : "ð… " U1D160 # MUSICAL SYMBOL EIGHTH NOTE -<Multi_key> <U1d158> <U1d165> <U1d16e> : "ð… " U1D160 # MUSICAL SYMBOL EIGHTH NOTE +XCOMM <Multi_key> <U1d158> <U1d165> <U1d16e> : "ð… " U1D160 # MUSICAL SYMBOL EIGHTH NOTE <Multi_key> <U1d15f> <U1d16f> : "ð…¡" U1D161 # MUSICAL SYMBOL SIXTEENTH NOTE -<Multi_key> <U1d158> <U1d165> <U1d16f> : "ð…¡" U1D161 # MUSICAL SYMBOL SIXTEENTH NOTE +XCOMM <Multi_key> <U1d158> <U1d165> <U1d16f> : "ð…¡" U1D161 # MUSICAL SYMBOL SIXTEENTH NOTE <Multi_key> <U1d15f> <U1d170> : "ð…¢" U1D162 # MUSICAL SYMBOL THIRTY-SECOND NOTE -<Multi_key> <U1d158> <U1d165> <U1d170> : "ð…¢" U1D162 # MUSICAL SYMBOL THIRTY-SECOND NOTE +XCOMM <Multi_key> <U1d158> <U1d165> <U1d170> : "ð…¢" U1D162 # MUSICAL SYMBOL THIRTY-SECOND NOTE <Multi_key> <U1d15f> <U1d171> : "ð…£" U1D163 # MUSICAL SYMBOL SIXTY-FOURTH NOTE -<Multi_key> <U1d158> <U1d165> <U1d171> : "ð…£" U1D163 # MUSICAL SYMBOL SIXTY-FOURTH NOTE +XCOMM <Multi_key> <U1d158> <U1d165> <U1d171> : "ð…£" U1D163 # MUSICAL SYMBOL SIXTY-FOURTH NOTE <Multi_key> <U1d15f> <U1d172> : "ð…¤" U1D164 # MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE -<Multi_key> <U1d158> <U1d165> <U1d172> : "ð…¤" U1D164 # MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE +XCOMM <Multi_key> <U1d158> <U1d165> <U1d172> : "ð…¤" U1D164 # MUSICAL SYMBOL ONE HUNDRED TWENTY-EIGHTH NOTE <Multi_key> <U1d1b9> <U1d165> : "ð†»" U1D1BB # MUSICAL SYMBOL MINIMA <Multi_key> <U1d1ba> <U1d165> : "ð†¼" U1D1BC # MUSICAL SYMBOL MINIMA BLACK <Multi_key> <U1d1bb> <U1d16e> : "ð†½" U1D1BD # MUSICAL SYMBOL SEMIMINIMA WHITE -<Multi_key> <U1d1b9> <U1d165> <U1d16e> : "ð†½" U1D1BD # MUSICAL SYMBOL SEMIMINIMA WHITE +XCOMM <Multi_key> <U1d1b9> <U1d165> <U1d16e> : "ð†½" U1D1BD # MUSICAL SYMBOL SEMIMINIMA WHITE <Multi_key> <U1d1bc> <U1d16e> : "ð†¾" U1D1BE # MUSICAL SYMBOL SEMIMINIMA BLACK -<Multi_key> <U1d1ba> <U1d165> <U1d16e> : "ð†¾" U1D1BE # MUSICAL SYMBOL SEMIMINIMA BLACK +XCOMM <Multi_key> <U1d1ba> <U1d165> <U1d16e> : "ð†¾" U1D1BE # MUSICAL SYMBOL SEMIMINIMA BLACK <Multi_key> <U1d1bb> <U1d16f> : "ð†¿" U1D1BF # MUSICAL SYMBOL FUSA WHITE -<Multi_key> <U1d1b9> <U1d165> <U1d16f> : "ð†¿" U1D1BF # MUSICAL SYMBOL FUSA WHITE +XCOMM <Multi_key> <U1d1b9> <U1d165> <U1d16f> : "ð†¿" U1D1BF # MUSICAL SYMBOL FUSA WHITE <Multi_key> <U1d1bc> <U1d16f> : "ð‡€" U1D1C0 # MUSICAL SYMBOL FUSA BLACK -<Multi_key> <U1d1ba> <U1d165> <U1d16f> : "ð‡€" U1D1C0 # MUSICAL SYMBOL FUSA BLACK +XCOMM <Multi_key> <U1d1ba> <U1d165> <U1d16f> : "ð‡€" U1D1C0 # MUSICAL SYMBOL FUSA BLACK XCOMM XCOMM Khmer digraphs diff --git a/libX11/nls/pt_BR.UTF-8/Makefile.in b/libX11/nls/pt_BR.UTF-8/Makefile.in index ffac17706..51511c590 100644 --- a/libX11/nls/pt_BR.UTF-8/Makefile.in +++ b/libX11/nls/pt_BR.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/ru_RU.UTF-8/Makefile.in b/libX11/nls/ru_RU.UTF-8/Makefile.in index d4045e7ab..682dfc4ec 100644 --- a/libX11/nls/ru_RU.UTF-8/Makefile.in +++ b/libX11/nls/ru_RU.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/tatar-cyr/Makefile.in b/libX11/nls/tatar-cyr/Makefile.in index ebd16b7a0..5bfdcbab9 100644 --- a/libX11/nls/tatar-cyr/Makefile.in +++ b/libX11/nls/tatar-cyr/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/th_TH.UTF-8/Makefile.in b/libX11/nls/th_TH.UTF-8/Makefile.in index 24a49ac4a..04564e715 100644 --- a/libX11/nls/th_TH.UTF-8/Makefile.in +++ b/libX11/nls/th_TH.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/th_TH/Makefile.in b/libX11/nls/th_TH/Makefile.in index ab6fc77c4..555654ea8 100644 --- a/libX11/nls/th_TH/Makefile.in +++ b/libX11/nls/th_TH/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/tscii-0/Makefile.in b/libX11/nls/tscii-0/Makefile.in index 3627dc9f8..e698344ae 100644 --- a/libX11/nls/tscii-0/Makefile.in +++ b/libX11/nls/tscii-0/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/vi_VN.tcvn/Makefile.in b/libX11/nls/vi_VN.tcvn/Makefile.in index 30c4f9b4d..60e1aad3f 100644 --- a/libX11/nls/vi_VN.tcvn/Makefile.in +++ b/libX11/nls/vi_VN.tcvn/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/vi_VN.viscii/Makefile.in b/libX11/nls/vi_VN.viscii/Makefile.in index aecbcfd7e..aa88cf235 100644 --- a/libX11/nls/vi_VN.viscii/Makefile.in +++ b/libX11/nls/vi_VN.viscii/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_CN.UTF-8/Makefile.in b/libX11/nls/zh_CN.UTF-8/Makefile.in index eb7f535de..648a343ac 100644 --- a/libX11/nls/zh_CN.UTF-8/Makefile.in +++ b/libX11/nls/zh_CN.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_CN.gb18030/Makefile.in b/libX11/nls/zh_CN.gb18030/Makefile.in index f5f22a65b..f8133298d 100644 --- a/libX11/nls/zh_CN.gb18030/Makefile.in +++ b/libX11/nls/zh_CN.gb18030/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_CN.gbk/Makefile.in b/libX11/nls/zh_CN.gbk/Makefile.in index df5622446..16ab2d933 100644 --- a/libX11/nls/zh_CN.gbk/Makefile.in +++ b/libX11/nls/zh_CN.gbk/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_CN/Makefile.in b/libX11/nls/zh_CN/Makefile.in index 8a61b36d4..63c77cfb3 100644 --- a/libX11/nls/zh_CN/Makefile.in +++ b/libX11/nls/zh_CN/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_HK.UTF-8/Makefile.in b/libX11/nls/zh_HK.UTF-8/Makefile.in index 2fb0a2507..8d9ec2718 100644 --- a/libX11/nls/zh_HK.UTF-8/Makefile.in +++ b/libX11/nls/zh_HK.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_HK.big5/Makefile.in b/libX11/nls/zh_HK.big5/Makefile.in index 5ce1c579c..62fb6260b 100644 --- a/libX11/nls/zh_HK.big5/Makefile.in +++ b/libX11/nls/zh_HK.big5/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_HK.big5hkscs/Makefile.in b/libX11/nls/zh_HK.big5hkscs/Makefile.in index d76c2b066..60db2a0da 100644 --- a/libX11/nls/zh_HK.big5hkscs/Makefile.in +++ b/libX11/nls/zh_HK.big5hkscs/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_TW.UTF-8/Makefile.in b/libX11/nls/zh_TW.UTF-8/Makefile.in index 647f0221f..999f6c116 100644 --- a/libX11/nls/zh_TW.UTF-8/Makefile.in +++ b/libX11/nls/zh_TW.UTF-8/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_TW.big5/Makefile.in b/libX11/nls/zh_TW.big5/Makefile.in index 0dd5cbfde..845ba6938 100644 --- a/libX11/nls/zh_TW.big5/Makefile.in +++ b/libX11/nls/zh_TW.big5/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/nls/zh_TW/Makefile.in b/libX11/nls/zh_TW/Makefile.in index 7d4e6ad37..fd44de670 100644 --- a/libX11/nls/zh_TW/Makefile.in +++ b/libX11/nls/zh_TW/Makefile.in @@ -52,6 +52,12 @@ CONFIG_HEADER = $(top_builddir)/src/config.h \ $(top_builddir)/include/X11/XlibConf.h CONFIG_CLEAN_FILES = CONFIG_CLEAN_VPATH_FILES = +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ SOURCES = DIST_SOURCES = am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -78,11 +84,14 @@ am__base_list = \ am__installdirs = "$(DESTDIR)$(x11thislocaledir)" \ "$(DESTDIR)$(x11thislocaledir)" DATA = $(dist_x11thislocale_DATA) $(x11thislocale_DATA) +am__tty_colors = \ +red=; grn=; lgn=; blu=; std= DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST) ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -159,6 +168,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -265,10 +275,17 @@ CPP_SED_MAGIC = $(SED) -e '/^\# *[0-9][0-9]* *.*$$/d' \ -e 's,X11_LOCALEDATADIR,$(X11_LOCALEDATADIR),g' \ -e '/\@\@$$/s/\@\@$$/\\/' + +# Support for automake 1.11 AM_SILENT_RULES +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose = $(cpp_verbose_$(V)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_ = $(cpp_verbose_$(AM_DEFAULT_VERBOSITY)) +@HAVE_AM_SILENT_RULES_TRUE@cpp_verbose_0 = @echo " CPP " $@; EXTRA_DIST = XLC_LOCALE.pre Compose.pre dist_x11thislocale_DATA = XI18N_OBJS x11thislocale_DATA = XLC_LOCALE Compose CLEANFILES = XLC_LOCALE Compose +@HAVE_PERL_TRUE@TESTS_ENVIRONMENT = $(PERL) +@HAVE_PERL_TRUE@TESTS = $(top_srcdir)/nls/compose-check.pl all: all-am .SUFFIXES: @@ -356,6 +373,98 @@ ctags: CTAGS CTAGS: +check-TESTS: $(TESTS) + @failed=0; all=0; xfail=0; xpass=0; skip=0; \ + srcdir=$(srcdir); export srcdir; \ + list=' $(TESTS) '; \ + $(am__tty_colors); \ + if test -n "$$list"; then \ + for tst in $$list; do \ + if test -f ./$$tst; then dir=./; \ + elif test -f $$tst; then dir=; \ + else dir="$(srcdir)/"; fi; \ + if $(TESTS_ENVIRONMENT) $${dir}$$tst; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xpass=`expr $$xpass + 1`; \ + failed=`expr $$failed + 1`; \ + col=$$red; res=XPASS; \ + ;; \ + *) \ + col=$$grn; res=PASS; \ + ;; \ + esac; \ + elif test $$? -ne 77; then \ + all=`expr $$all + 1`; \ + case " $(XFAIL_TESTS) " in \ + *[\ \ ]$$tst[\ \ ]*) \ + xfail=`expr $$xfail + 1`; \ + col=$$lgn; res=XFAIL; \ + ;; \ + *) \ + failed=`expr $$failed + 1`; \ + col=$$red; res=FAIL; \ + ;; \ + esac; \ + else \ + skip=`expr $$skip + 1`; \ + col=$$blu; res=SKIP; \ + fi; \ + echo "$${col}$$res$${std}: $$tst"; \ + done; \ + if test "$$all" -eq 1; then \ + tests="test"; \ + All=""; \ + else \ + tests="tests"; \ + All="All "; \ + fi; \ + if test "$$failed" -eq 0; then \ + if test "$$xfail" -eq 0; then \ + banner="$$All$$all $$tests passed"; \ + else \ + if test "$$xfail" -eq 1; then failures=failure; else failures=failures; fi; \ + banner="$$All$$all $$tests behaved as expected ($$xfail expected $$failures)"; \ + fi; \ + else \ + if test "$$xpass" -eq 0; then \ + banner="$$failed of $$all $$tests failed"; \ + else \ + if test "$$xpass" -eq 1; then passes=pass; else passes=passes; fi; \ + banner="$$failed of $$all $$tests did not behave as expected ($$xpass unexpected $$passes)"; \ + fi; \ + fi; \ + dashes="$$banner"; \ + skipped=""; \ + if test "$$skip" -ne 0; then \ + if test "$$skip" -eq 1; then \ + skipped="($$skip test was not run)"; \ + else \ + skipped="($$skip tests were not run)"; \ + fi; \ + test `echo "$$skipped" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$skipped"; \ + fi; \ + report=""; \ + if test "$$failed" -ne 0 && test -n "$(PACKAGE_BUGREPORT)"; then \ + report="Please report to $(PACKAGE_BUGREPORT)"; \ + test `echo "$$report" | wc -c` -le `echo "$$banner" | wc -c` || \ + dashes="$$report"; \ + fi; \ + dashes=`echo "$$dashes" | sed s/./=/g`; \ + if test "$$failed" -eq 0; then \ + echo "$$grn$$dashes"; \ + else \ + echo "$$red$$dashes"; \ + fi; \ + echo "$$banner"; \ + test -z "$$skipped" || echo "$$skipped"; \ + test -z "$$report" || echo "$$report"; \ + echo "$$dashes$$std"; \ + test "$$failed" -eq 0; \ + else :; fi + distdir: $(DISTFILES) @srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \ @@ -387,6 +496,7 @@ distdir: $(DISTFILES) fi; \ done check-am: all-am + $(MAKE) $(AM_MAKEFLAGS) check-TESTS check: check-am all-am: Makefile $(DATA) installdirs: @@ -487,24 +597,25 @@ ps-am: uninstall-am: uninstall-dist_x11thislocaleDATA \ uninstall-x11thislocaleDATA -.MAKE: install-am install-strip - -.PHONY: all all-am check check-am clean clean-generic clean-libtool \ - distclean distclean-generic distclean-libtool distdir dvi \ - dvi-am html html-am info info-am install install-am \ - install-data install-data-am install-dist_x11thislocaleDATA \ - install-dvi install-dvi-am install-exec install-exec-am \ - install-html install-html-am install-info install-info-am \ - install-man install-pdf install-pdf-am install-ps \ - install-ps-am install-strip install-x11thislocaleDATA \ - installcheck installcheck-am installdirs maintainer-clean \ - maintainer-clean-generic mostlyclean mostlyclean-generic \ - mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \ +.MAKE: check-am install-am install-strip + +.PHONY: all all-am check check-TESTS check-am clean clean-generic \ + clean-libtool distclean distclean-generic distclean-libtool \ + distdir dvi dvi-am html html-am info info-am install \ + install-am install-data install-data-am \ + install-dist_x11thislocaleDATA install-dvi install-dvi-am \ + install-exec install-exec-am install-html install-html-am \ + install-info install-info-am install-man install-pdf \ + install-pdf-am install-ps install-ps-am install-strip \ + install-x11thislocaleDATA installcheck installcheck-am \ + installdirs maintainer-clean maintainer-clean-generic \ + mostlyclean mostlyclean-generic mostlyclean-libtool pdf pdf-am \ + ps ps-am uninstall uninstall-am \ uninstall-dist_x11thislocaleDATA uninstall-x11thislocaleDATA .pre: - $(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ + $(cpp_verbose)$(RAWCPP) $(RAWCPPFLAGS) $(CPP_FILES_FLAGS) < $< | $(CPP_SED_MAGIC) > $@ # Tell versions [3.59,3.63) of GNU make to not export all variables. # Otherwise a system limit (for SysV at least) may be exceeded. diff --git a/libX11/src/ConnDis.c b/libX11/src/ConnDis.c index 0ecd71c37..0cc170e83 100644 --- a/libX11/src/ConnDis.c +++ b/libX11/src/ConnDis.c @@ -39,7 +39,9 @@ in this Software without prior written authorization from The Open Group. #include <X11/Xlibint.h> #include <X11/Xtrans/Xtrans.h> #include <X11/Xauth.h> +#ifdef HASXDMAUTH #include <X11/Xdmcp.h> +#endif #include <stdio.h> #include <ctype.h> #include <unistd.h> diff --git a/libX11/src/CrGlCur.c b/libX11/src/CrGlCur.c index 48d64d55e..5d7adde75 100644 --- a/libX11/src/CrGlCur.c +++ b/libX11/src/CrGlCur.c @@ -1,272 +1,272 @@ -/* $Xorg: CrGlCur.c,v 1.4 2001/02/09 02:03:32 xorgcvs Exp $ */ -/* - -Copyright 1986, 1998 The Open Group - -Permission to use, copy, modify, distribute, and sell this software and its -documentation for any purpose is hereby granted without fee, provided that -the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation. - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of The Open Group shall not be -used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from The Open Group. - -*/ -/* $XFree86: xc/lib/X11/CrGlCur.c,v 1.7 2003/04/13 19:22:15 dawes Exp $ */ - -#ifdef HAVE_CONFIG_H -#include <config.h> -#endif -#include "Xlibint.h" - -#ifdef USE_DYNAMIC_XCURSOR - -#ifdef __UNIXOS2__ -#define RTLD_LAZY 1 -#define LIBXCURSOR "Xcursor.dll" -#endif -#include <stdio.h> -#include <string.h> -#if defined(hpux) -#include <dl.h> -#else -#include <dlfcn.h> -#endif -#include "Cr.h" - -#ifdef __CYGWIN__ -#define LIBXCURSOR "cygXcursor-1.dll" -#endif - -#if defined(hpux) -typedef shl_dt XModuleType; -#else -#ifdef _MSC_VER -#include <X11/XWindows.h> -typedef HANDLE XModuleType; -#define dlsym GetProcAddress -#else -typedef void *XModuleType; -#endif -#endif - -#ifndef LIBXCURSOR -#define LIBXCURSOR "libXcursor.so.1" -#endif - -static char libraryName[] = LIBXCURSOR; - -static XModuleType -open_library (void) -{ - char *library = libraryName; - char *dot; - XModuleType module; - for (;;) - { -#if defined(hpux) - module = shl_load(library, BIND_DEFERRED, 0L); -#else -#ifdef _MSC_VER - module = LoadLibrary(library); -#else - module = dlopen(library, RTLD_LAZY); -#endif -#endif - if (module) - return module; - dot = strrchr (library, '.'); - if (!dot) - break; - *dot = '\0'; - } - return NULL; -} - -static void * -fetch_symbol (XModuleType module, const char *under_symbol) -{ - void *result = NULL; - const char *symbol = under_symbol + 1; -#if defined(hpux) - int getsyms_cnt, i; - struct shl_symbol *symbols; - - getsyms_cnt = shl_getsymbols(module, TYPE_PROCEDURE, - EXPORT_SYMBOLS, malloc, &symbols); - - for(i=0; i<getsyms_cnt; i++) { - if(!strcmp(symbols[i].name, symbol)) { - result = symbols[i].value; - break; - } - } - - if(getsyms_cnt > 0) { - free(symbols); - } -#else - result = dlsym (module, symbol); - if (!result) - result = dlsym (module, under_symbol); -#endif - return result; -} - -typedef void (*NoticeCreateBitmapFunc) (Display *dpy, - Pixmap pid, - unsigned int width, - unsigned int height); - -typedef void (*NoticePutBitmapFunc) (Display *dpy, - Drawable draw, - XImage *image); - -typedef Cursor (*TryShapeBitmapCursorFunc) (Display *dpy, - Pixmap source, - Pixmap mask, - XColor *foreground, - XColor *background, - unsigned int x, - unsigned int y); - -typedef Cursor (*TryShapeCursorFunc) (Display *dpy, - Font source_font, - Font mask_font, - unsigned int source_char, - unsigned int mask_char, - XColor _Xconst *foreground, - XColor _Xconst *background); - -static XModuleType _XcursorModule; -static Bool _XcursorModuleTried; - -#define GetFunc(type,name,ret) {\ - static Bool been_here; \ - static type staticFunc; \ - \ - _XLockMutex (_Xglobal_lock); \ - if (!been_here) \ - { \ - been_here = True; \ - if (!_XcursorModuleTried) \ - { \ - _XcursorModuleTried = True; \ - _XcursorModule = open_library (); \ - } \ - if (_XcursorModule) \ - staticFunc = (type) fetch_symbol (_XcursorModule, "_" name); \ - } \ - ret = staticFunc; \ - _XUnlockMutex (_Xglobal_lock); \ -} - -static Cursor -_XTryShapeCursor (Display *dpy, - Font source_font, - Font mask_font, - unsigned int source_char, - unsigned int mask_char, - XColor _Xconst *foreground, - XColor _Xconst *background) -{ - TryShapeCursorFunc func; - - GetFunc (TryShapeCursorFunc, "XcursorTryShapeCursor", func); - if (func) - return (*func) (dpy, source_font, mask_font, source_char, mask_char, - foreground, background); - return None; -} - -void -_XNoticeCreateBitmap (Display *dpy, - Pixmap pid, - unsigned int width, - unsigned int height) -{ - NoticeCreateBitmapFunc func; - - GetFunc (NoticeCreateBitmapFunc, "XcursorNoticeCreateBitmap", func); - if (func) - (*func) (dpy, pid, width, height); -} - -void -_XNoticePutBitmap (Display *dpy, - Drawable draw, - XImage *image) -{ - NoticePutBitmapFunc func; - - GetFunc (NoticePutBitmapFunc, "XcursorNoticePutBitmap", func); - if (func) - (*func) (dpy, draw, image); -} - -Cursor -_XTryShapeBitmapCursor (Display *dpy, - Pixmap source, - Pixmap mask, - XColor *foreground, - XColor *background, - unsigned int x, - unsigned int y) -{ - TryShapeBitmapCursorFunc func; - - GetFunc (TryShapeBitmapCursorFunc, "XcursorTryShapeBitmapCursor", func); - if (func) - return (*func) (dpy, source, mask, foreground, background, x, y); - return None; -} -#endif - -Cursor XCreateGlyphCursor( - register Display *dpy, - Font source_font, - Font mask_font, - unsigned int source_char, - unsigned int mask_char, - XColor _Xconst *foreground, - XColor _Xconst *background) -{ - Cursor cid; - register xCreateGlyphCursorReq *req; - -#ifdef USE_DYNAMIC_XCURSOR - cid = _XTryShapeCursor (dpy, source_font, mask_font, - source_char, mask_char, foreground, background); - if (cid) - return cid; -#endif - LockDisplay(dpy); - GetReq(CreateGlyphCursor, req); - cid = req->cid = XAllocID(dpy); - req->source = source_font; - req->mask = mask_font; - req->sourceChar = source_char; - req->maskChar = mask_char; - req->foreRed = foreground->red; - req->foreGreen = foreground->green; - req->foreBlue = foreground->blue; - req->backRed = background->red; - req->backGreen = background->green; - req->backBlue = background->blue; - UnlockDisplay(dpy); - SyncHandle(); - return (cid); -} - +/* $Xorg: CrGlCur.c,v 1.4 2001/02/09 02:03:32 xorgcvs Exp $ */
+/*
+
+Copyright 1986, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
+
+*/
+/* $XFree86: xc/lib/X11/CrGlCur.c,v 1.7 2003/04/13 19:22:15 dawes Exp $ */
+
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+#include "Xlibint.h"
+
+#ifdef USE_DYNAMIC_XCURSOR
+
+#ifdef __UNIXOS2__
+#define RTLD_LAZY 1
+#define LIBXCURSOR "Xcursor.dll"
+#endif
+#include <stdio.h>
+#include <string.h>
+#if defined(hpux)
+#include <dl.h>
+#else
+#include <dlfcn.h>
+#endif
+#include "Cr.h"
+
+#ifdef __CYGWIN__
+#define LIBXCURSOR "cygXcursor-1.dll"
+#endif
+
+#if defined(hpux)
+typedef shl_t XModuleType;
+#else
+#ifdef _MSC_VER
+#include <X11/XWindows.h>
+typedef HANDLE XModuleType;
+#define dlsym GetProcAddress
+#else
+typedef void *XModuleType;
+#endif
+#endif
+
+#ifndef LIBXCURSOR
+#define LIBXCURSOR "libXcursor.so.1"
+#endif
+
+static char libraryName[] = LIBXCURSOR;
+
+static XModuleType
+open_library (void)
+{
+ char *library = libraryName;
+ char *dot;
+ XModuleType module;
+ for (;;)
+ {
+#if defined(hpux)
+ module = shl_load(library, BIND_DEFERRED, 0L);
+#else
+#ifdef _MSC_VER
+ module = LoadLibrary(library);
+#else
+ module = dlopen(library, RTLD_LAZY);
+#endif
+#endif
+ if (module)
+ return module;
+ dot = strrchr (library, '.');
+ if (!dot)
+ break;
+ *dot = '\0';
+ }
+ return NULL;
+}
+
+static void *
+fetch_symbol (XModuleType module, const char *under_symbol)
+{
+ void *result = NULL;
+ const char *symbol = under_symbol + 1;
+#if defined(hpux)
+ int getsyms_cnt, i;
+ struct shl_symbol *symbols;
+
+ getsyms_cnt = shl_getsymbols(module, TYPE_PROCEDURE,
+ EXPORT_SYMBOLS, malloc, &symbols);
+
+ for(i=0; i<getsyms_cnt; i++) {
+ if(!strcmp(symbols[i].name, symbol)) {
+ result = symbols[i].value;
+ break;
+ }
+ }
+
+ if(getsyms_cnt > 0) {
+ free(symbols);
+ }
+#else
+ result = dlsym (module, symbol);
+ if (!result)
+ result = dlsym (module, under_symbol);
+#endif
+ return result;
+}
+
+typedef void (*NoticeCreateBitmapFunc) (Display *dpy,
+ Pixmap pid,
+ unsigned int width,
+ unsigned int height);
+
+typedef void (*NoticePutBitmapFunc) (Display *dpy,
+ Drawable draw,
+ XImage *image);
+
+typedef Cursor (*TryShapeBitmapCursorFunc) (Display *dpy,
+ Pixmap source,
+ Pixmap mask,
+ XColor *foreground,
+ XColor *background,
+ unsigned int x,
+ unsigned int y);
+
+typedef Cursor (*TryShapeCursorFunc) (Display *dpy,
+ Font source_font,
+ Font mask_font,
+ unsigned int source_char,
+ unsigned int mask_char,
+ XColor _Xconst *foreground,
+ XColor _Xconst *background);
+
+static XModuleType _XcursorModule;
+static Bool _XcursorModuleTried;
+
+#define GetFunc(type,name,ret) {\
+ static Bool been_here; \
+ static type staticFunc; \
+ \
+ _XLockMutex (_Xglobal_lock); \
+ if (!been_here) \
+ { \
+ been_here = True; \
+ if (!_XcursorModuleTried) \
+ { \
+ _XcursorModuleTried = True; \
+ _XcursorModule = open_library (); \
+ } \
+ if (_XcursorModule) \
+ staticFunc = (type) fetch_symbol (_XcursorModule, "_" name); \
+ } \
+ ret = staticFunc; \
+ _XUnlockMutex (_Xglobal_lock); \
+}
+
+static Cursor
+_XTryShapeCursor (Display *dpy,
+ Font source_font,
+ Font mask_font,
+ unsigned int source_char,
+ unsigned int mask_char,
+ XColor _Xconst *foreground,
+ XColor _Xconst *background)
+{
+ TryShapeCursorFunc func;
+
+ GetFunc (TryShapeCursorFunc, "XcursorTryShapeCursor", func);
+ if (func)
+ return (*func) (dpy, source_font, mask_font, source_char, mask_char,
+ foreground, background);
+ return None;
+}
+
+void
+_XNoticeCreateBitmap (Display *dpy,
+ Pixmap pid,
+ unsigned int width,
+ unsigned int height)
+{
+ NoticeCreateBitmapFunc func;
+
+ GetFunc (NoticeCreateBitmapFunc, "XcursorNoticeCreateBitmap", func);
+ if (func)
+ (*func) (dpy, pid, width, height);
+}
+
+void
+_XNoticePutBitmap (Display *dpy,
+ Drawable draw,
+ XImage *image)
+{
+ NoticePutBitmapFunc func;
+
+ GetFunc (NoticePutBitmapFunc, "XcursorNoticePutBitmap", func);
+ if (func)
+ (*func) (dpy, draw, image);
+}
+
+Cursor
+_XTryShapeBitmapCursor (Display *dpy,
+ Pixmap source,
+ Pixmap mask,
+ XColor *foreground,
+ XColor *background,
+ unsigned int x,
+ unsigned int y)
+{
+ TryShapeBitmapCursorFunc func;
+
+ GetFunc (TryShapeBitmapCursorFunc, "XcursorTryShapeBitmapCursor", func);
+ if (func)
+ return (*func) (dpy, source, mask, foreground, background, x, y);
+ return None;
+}
+#endif
+
+Cursor XCreateGlyphCursor(
+ register Display *dpy,
+ Font source_font,
+ Font mask_font,
+ unsigned int source_char,
+ unsigned int mask_char,
+ XColor _Xconst *foreground,
+ XColor _Xconst *background)
+{
+ Cursor cid;
+ register xCreateGlyphCursorReq *req;
+
+#ifdef USE_DYNAMIC_XCURSOR
+ cid = _XTryShapeCursor (dpy, source_font, mask_font,
+ source_char, mask_char, foreground, background);
+ if (cid)
+ return cid;
+#endif
+ LockDisplay(dpy);
+ GetReq(CreateGlyphCursor, req);
+ cid = req->cid = XAllocID(dpy);
+ req->source = source_font;
+ req->mask = mask_font;
+ req->sourceChar = source_char;
+ req->maskChar = mask_char;
+ req->foreRed = foreground->red;
+ req->foreGreen = foreground->green;
+ req->foreBlue = foreground->blue;
+ req->backRed = background->red;
+ req->backGreen = background->green;
+ req->backBlue = background->blue;
+ UnlockDisplay(dpy);
+ SyncHandle();
+ return (cid);
+}
+
diff --git a/libX11/src/Makefile.in b/libX11/src/Makefile.in index 1d377c9e0..a79daa847 100644 --- a/libX11/src/Makefile.in +++ b/libX11/src/Makefile.in @@ -93,7 +93,10 @@ LTLIBRARIES = $(lib_LTLIBRARIES) am__libX11_xcb_la_SOURCES_DIST = x11_xcb.c Xxcbint.h @XCB_TRUE@am_libX11_xcb_la_OBJECTS = x11_xcb.lo libX11_xcb_la_OBJECTS = $(am_libX11_xcb_la_OBJECTS) -libX11_xcb_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +libX11_xcb_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(libX11_xcb_la_LDFLAGS) $(LDFLAGS) -o $@ @XCB_TRUE@am_libX11_xcb_la_rpath = -rpath $(libdir) @@ -212,7 +215,7 @@ am_libX11_la_OBJECTS = AllCells.lo AllowEv.lo AllPlanes.lo AutoRep.lo \ $(am__objects_2) $(am__objects_3) $(am__objects_4) \ $(am__objects_5) libX11_la_OBJECTS = $(am_libX11_la_OBJECTS) -libX11_la_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) \ +libX11_la_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ $(libX11_la_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/include/X11 @@ -221,10 +224,22 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libX11_xcb_la_SOURCES) $(libX11_la_SOURCES) DIST_SOURCES = $(am__libX11_xcb_la_SOURCES_DIST) \ $(am__libX11_la_SOURCES_DIST) @@ -274,6 +289,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -354,6 +370,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -654,9 +671,9 @@ clean-libLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libX11-xcb.la: $(libX11_xcb_la_OBJECTS) $(libX11_xcb_la_DEPENDENCIES) - $(libX11_xcb_la_LINK) $(am_libX11_xcb_la_rpath) $(libX11_xcb_la_OBJECTS) $(libX11_xcb_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(libX11_xcb_la_LINK) $(am_libX11_xcb_la_rpath) $(libX11_xcb_la_OBJECTS) $(libX11_xcb_la_LIBADD) $(LIBS) libX11.la: $(libX11_la_OBJECTS) $(libX11_la_DEPENDENCIES) - $(libX11_la_LINK) -rpath $(libdir) $(libX11_la_OBJECTS) $(libX11_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(libX11_la_LINK) -rpath $(libdir) $(libX11_la_OBJECTS) $(libX11_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -931,22 +948,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xcb_io.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/src/XKeysymDB b/libX11/src/XKeysymDB index 5e668820b..2dec6e2ac 100644 --- a/libX11/src/XKeysymDB +++ b/libX11/src/XKeysymDB @@ -353,6 +353,7 @@ XF86Yellow :1008FFA5 XF86Blue :1008FFA6 XF86Suspend :1008FFA7 XF86Hibernate :1008FFA8 +XF86TouchpadToggle :1008FFA9 ! XFree86 special action keys XF86_Switch_VT_1 :1008FE01 diff --git a/libX11/src/config.h.in b/libX11/src/config.h.in index 0c71790e1..355b2b766 100644 --- a/libX11/src/config.h.in +++ b/libX11/src/config.h.in @@ -39,6 +39,9 @@ /* launchd support available */ #undef HAVE_LAUNCHD +/* Define to 1 if you have the `ws2_32' library (-lws2_32). */ +#undef HAVE_LIBWS2_32 + /* Define to 1 if you have the <memory.h> header file. */ #undef HAVE_MEMORY_H diff --git a/libX11/src/util/Makefile.in b/libX11/src/util/Makefile.in index 11474a962..bf855c110 100644 --- a/libX11/src/util/Makefile.in +++ b/libX11/src/util/Makefile.in @@ -53,19 +53,34 @@ PROGRAMS = $(noinst_PROGRAMS) makekeys_SOURCES = makekeys.c makekeys_OBJECTS = makekeys-makekeys.$(OBJEXT) makekeys_LDADD = $(LDADD) -makekeys_LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(makekeys_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent +makekeys_LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(makekeys_CFLAGS) \ + $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = makekeys.c DIST_SOURCES = makekeys.c ETAGS = etags @@ -75,6 +90,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -151,6 +167,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -290,7 +307,7 @@ clean-noinstPROGRAMS: rm -f $$list makekeys$(EXEEXT): $(makekeys_OBJECTS) $(makekeys_DEPENDENCIES) @rm -f makekeys$(EXEEXT) - $(makekeys_LINK) $(makekeys_OBJECTS) $(makekeys_LDADD) $(LIBS) + $(AM_V_CCLD)$(makekeys_LINK) $(makekeys_OBJECTS) $(makekeys_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -301,36 +318,41 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/makekeys-makekeys.Po@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< makekeys-makekeys.o: makekeys.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -MT makekeys-makekeys.o -MD -MP -MF $(DEPDIR)/makekeys-makekeys.Tpo -c -o makekeys-makekeys.o `test -f 'makekeys.c' || echo '$(srcdir)/'`makekeys.c -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/makekeys-makekeys.Tpo $(DEPDIR)/makekeys-makekeys.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -MT makekeys-makekeys.o -MD -MP -MF $(DEPDIR)/makekeys-makekeys.Tpo -c -o makekeys-makekeys.o `test -f 'makekeys.c' || echo '$(srcdir)/'`makekeys.c +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/makekeys-makekeys.Tpo $(DEPDIR)/makekeys-makekeys.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='makekeys.c' object='makekeys-makekeys.o' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -c -o makekeys-makekeys.o `test -f 'makekeys.c' || echo '$(srcdir)/'`makekeys.c makekeys-makekeys.obj: makekeys.c -@am__fastdepCC_TRUE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -MT makekeys-makekeys.obj -MD -MP -MF $(DEPDIR)/makekeys-makekeys.Tpo -c -o makekeys-makekeys.obj `if test -f 'makekeys.c'; then $(CYGPATH_W) 'makekeys.c'; else $(CYGPATH_W) '$(srcdir)/makekeys.c'; fi` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/makekeys-makekeys.Tpo $(DEPDIR)/makekeys-makekeys.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -MT makekeys-makekeys.obj -MD -MP -MF $(DEPDIR)/makekeys-makekeys.Tpo -c -o makekeys-makekeys.obj `if test -f 'makekeys.c'; then $(CYGPATH_W) 'makekeys.c'; else $(CYGPATH_W) '$(srcdir)/makekeys.c'; fi` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/makekeys-makekeys.Tpo $(DEPDIR)/makekeys-makekeys.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='makekeys.c' object='makekeys-makekeys.obj' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(makekeys_CFLAGS) $(CFLAGS) -c -o makekeys-makekeys.obj `if test -f 'makekeys.c'; then $(CYGPATH_W) 'makekeys.c'; else $(CYGPATH_W) '$(srcdir)/makekeys.c'; fi` diff --git a/libX11/src/xcms/Makefile.in b/libX11/src/xcms/Makefile.in index 3469812da..6573196fd 100644 --- a/libX11/src/xcms/Makefile.in +++ b/libX11/src/xcms/Makefile.in @@ -62,16 +62,31 @@ am_libxcms_la_OBJECTS = AddDIC.lo AddSF.lo CCC.lo CvColW.lo CvCols.lo \ cmsAllNCol.lo cmsCmap.lo cmsColNm.lo cmsGlobls.lo cmsInt.lo \ cmsLkCol.lo cmsMath.lo cmsProp.lo cmsTrig.lo uvY.lo xyY.lo libxcms_la_OBJECTS = $(am_libxcms_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxcms_la_SOURCES) DIST_SOURCES = $(libxcms_la_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -104,6 +119,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -180,6 +196,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -401,7 +418,7 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxcms.la: $(libxcms_la_OBJECTS) $(libxcms_la_DEPENDENCIES) - $(LINK) $(libxcms_la_OBJECTS) $(libxcms_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(libxcms_la_OBJECTS) $(libxcms_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -474,22 +491,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xyY.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/src/xkb/Makefile.in b/libX11/src/xkb/Makefile.in index f3cb50532..0e526929d 100644 --- a/libX11/src/xkb/Makefile.in +++ b/libX11/src/xkb/Makefile.in @@ -54,16 +54,31 @@ am_libxkb_la_OBJECTS = XKB.lo XKBBind.lo XKBCompat.lo XKBCtrls.lo \ XKBSetGeom.lo XKBExtDev.lo XKBList.lo XKBMisc.lo XKBMAlloc.lo \ XKBGAlloc.lo XKBAlloc.lo libxkb_la_OBJECTS = $(am_libxkb_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libxkb_la_SOURCES) DIST_SOURCES = $(libxkb_la_SOURCES) ETAGS = etags @@ -73,6 +88,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -149,6 +165,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -324,7 +341,7 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libxkb.la: $(libxkb_la_OBJECTS) $(libxkb_la_DEPENDENCIES) - $(LINK) $(libxkb_la_OBJECTS) $(libxkb_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(libxkb_la_OBJECTS) $(libxkb_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -355,22 +372,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/XKBleds.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libX11/src/xlibi18n/Makefile.in b/libX11/src/xlibi18n/Makefile.in index 8c2e0d89b..50ac253b1 100644 --- a/libX11/src/xlibi18n/Makefile.in +++ b/libX11/src/xlibi18n/Makefile.in @@ -82,16 +82,31 @@ am_libi18n_la_OBJECTS = $(am__objects_1) XDefaultIMIF.lo \ lcRM.lo lcStd.lo lcTxtPr.lo lcUTF8.lo lcUtil.lo lcWrap.lo \ mbWMProps.lo mbWrap.lo utf8WMProps.lo utf8Wrap.lo wcWrap.lo libi18n_la_OBJECTS = $(am_libi18n_la_OBJECTS) +AM_V_lt = $(am__v_lt_$(V)) +am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) +am__v_lt_0 = --silent DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)/src -I$(top_builddir)/include/X11 depcomp = $(SHELL) $(top_srcdir)/depcomp am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) -LINK = $(LIBTOOL) --tag=CC $(AM_LIBTOOLFLAGS) $(LIBTOOLFLAGS) \ - --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) \ - $(LDFLAGS) -o $@ +LINK = $(LIBTOOL) $(AM_V_lt) --tag=CC $(AM_LIBTOOLFLAGS) \ + $(LIBTOOLFLAGS) --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ + $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(libi18n_la_SOURCES) DIST_SOURCES = $(am__libi18n_la_SOURCES_DIST) ETAGS = etags @@ -101,6 +116,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AR = @AR@ @@ -177,6 +193,7 @@ PACKAGE_STRING = @PACKAGE_STRING@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ PACKAGE_VERSION = @PACKAGE_VERSION@ PATH_SEPARATOR = @PATH_SEPARATOR@ +PERL = @PERL@ PKG_CONFIG = @PKG_CONFIG@ RANLIB = @RANLIB@ RAWCPP = @RAWCPP@ @@ -449,7 +466,7 @@ clean-noinstLTLIBRARIES: rm -f "$${dir}/so_locations"; \ done libi18n.la: $(libi18n_la_OBJECTS) $(libi18n_la_DEPENDENCIES) - $(LINK) $(libi18n_la_OBJECTS) $(libi18n_la_LIBADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(libi18n_la_OBJECTS) $(libi18n_la_LIBADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -489,22 +506,25 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xim_trans.Plo@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .c.lo: -@am__fastdepCC_TRUE@ $(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_TRUE@ $(AM_V_CC)$(LTCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Plo +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=yes @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(LTCOMPILE) -c -o $@ $< diff --git a/libXfont/src/fontfile/fontdir.c b/libXfont/src/fontfile/fontdir.c index 8b446a975..1a797823d 100644 --- a/libXfont/src/fontfile/fontdir.c +++ b/libXfont/src/fontfile/fontdir.c @@ -347,7 +347,7 @@ SetupWildMatch(FontTablePtr table, FontNamePtr pat, result = strcmpn(name, table->entries[center].name.name); if (result == 0) return center; - if (result < 0) + if (result < 0) right = center; else left = center + 1; diff --git a/libXinerama/ChangeLog b/libXinerama/ChangeLog index 38bea10f9..5a673bb5f 100644 --- a/libXinerama/ChangeLog +++ b/libXinerama/ChangeLog @@ -1,3 +1,19 @@ +commit ee877cebfea0773a91337439d32ece12444cf0a6 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 13:27:04 2009 +1000 + + libXinerama 1.1 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit c5f1f903ddf1f2216bb31408caec3e87ea795dd9 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 13:26:17 2009 +1000 + + Require macros 1.3 for XORG_DEFAULT_OPTIONS + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + commit 46e5273f34fd950cb4757583e06d5687d1f10407 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Thu Aug 27 11:47:34 2009 +1000 diff --git a/libXinerama/aclocal.m4 b/libXinerama/aclocal.m4 index 7fc182575..a05d3618f 100644 --- a/libXinerama/aclocal.m4 +++ b/libXinerama/aclocal.m4 @@ -9178,7 +9178,7 @@ dnl of the copyright holder. # See the "minimum version" comment for each macro you use to see what # version you require. m4_defun([XORG_MACROS_VERSION],[ -m4_define([vers_have], [1.2.2]) +m4_define([vers_have], [1.3.0]) m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) m4_if(m4_cmp(maj_have, maj_needed), 0,, @@ -9454,7 +9454,7 @@ AC_SUBST(MAKE_HTML) # their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ AC_ARG_ENABLE(malloc0returnsnull, - AC_HELP_STRING([--enable-malloc0returnsnull], + AS_HELP_STRING([--enable-malloc0returnsnull], [malloc(0) returns NULL (default: auto)]), [MALLOC_ZERO_RETURNS_NULL=$enableval], [MALLOC_ZERO_RETURNS_NULL=auto]) @@ -9506,7 +9506,7 @@ AC_SUBST([XTMALLOC_ZERO_CFLAGS]) AC_DEFUN([XORG_WITH_LINT],[ # Allow checking code with lint, sparse, etc. -AC_ARG_WITH(lint, [AC_HELP_STRING([--with-lint], +AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint], [Use a lint-style source code checker (default: disabled)])], [use_lint=$withval], [use_lint=no]) if test "x$use_lint" = "xyes" ; then @@ -9547,7 +9547,7 @@ AM_CONDITIONAL(LINT, [test x$LINT != xno]) AC_DEFUN([XORG_LINT_LIBRARY],[ AC_REQUIRE([XORG_WITH_LINT]) # Build lint "library" for more indepth checks of programs calling this library -AC_ARG_ENABLE(lint-library, [AC_HELP_STRING([--enable-lint-library], +AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library], [Create lint library (default: disabled)])], [make_lint_lib=$enableval], [make_lint_lib=no]) if test "x$make_lint_lib" != "xno" ; then @@ -9591,6 +9591,49 @@ fi AC_SUBST(CWARNFLAGS) m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) ]) # XORG_CWARNFLAGS + +# XORG_STRICT_OPTION +# ----------------------- +# Minimum version: 1.3.0 +# +# Add configure option to enable strict compilation +AC_DEFUN([XORG_STRICT_OPTION], [ +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_CC_C99]) +AC_REQUIRE([XORG_CWARNFLAGS]) + +AC_ARG_ENABLE(strict-compilation, + AS_HELP_STRING([--enable-strict-compilation], + [Enable all warnings from compiler and make them errors (default: disabled)]), + [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) +if test "x$STRICT_COMPILE" = "xyes"; then + AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) + if test "x$GCC" = xyes ; then + STRICT_CFLAGS="-pedantic -Werror" + elif test "x$SUNCC" = "xyes"; then + STRICT_CFLAGS="-errwarn" + elif test "x$INTELCC" = "xyes"; then + STRICT_CFLAGS="-Werror" + fi +fi +CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" +AC_SUBST([CWARNFLAGS]) +]) # XORG_STRICT_OPTION + +# XORG_DEFAULT_OPTIONS +# -------------------- +# Minimum version: 1.3.0 +# +# Defines default options for X.Org modules. +# +AC_DEFUN([XORG_DEFAULT_OPTIONS], [ +XORG_CWARNFLAGS +XORG_STRICT_OPTION +XORG_RELEASE_VERSION +XORG_CHANGELOG +XORG_MANPAGE_SECTIONS +]) # XORG_DEFAULT_OPTIONS dnl Copyright 2005 Red Hat, Inc dnl dnl Permission to use, copy, modify, distribute, and sell this software and its @@ -9625,7 +9668,7 @@ dnl AC_DEFUN([XORG_RELEASE_VERSION],[ AC_ARG_WITH(release-version, - AC_HELP_STRING([--with-release-version=STRING], + AS_HELP_STRING([--with-release-version=STRING], [Use release version string in package name]), [RELEASE_VERSION="$withval"], [RELEASE_VERSION=""]) diff --git a/libXinerama/configure b/libXinerama/configure index 067c757e1..74986ac51 100644 --- a/libXinerama/configure +++ b/libXinerama/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for libXinerama 1.0.99.1. +# Generated by GNU Autoconf 2.63 for libXinerama 1.1. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -745,8 +745,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='libXinerama' PACKAGE_TARNAME='libXinerama' -PACKAGE_VERSION='1.0.99.1' -PACKAGE_STRING='libXinerama 1.0.99.1' +PACKAGE_VERSION='1.1' +PACKAGE_STRING='libXinerama 1.1' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' # Factoring default headers for most tests. @@ -789,8 +789,16 @@ ac_subst_vars='am__EXEEXT_FALSE am__EXEEXT_TRUE LTLIBOBJS LIBOBJS -distcleancheck_listfiles -CHANGELOG_CMD +XTMALLOC_ZERO_CFLAGS +XMALLOC_ZERO_CFLAGS +MALLOC_ZERO_CFLAGS +LINT_FALSE +LINT_TRUE +LINT_FLAGS +LINT +XINERAMA_LIBS +XINERAMA_CFLAGS +PKG_CONFIG ADMIN_MAN_DIR DRIVER_MAN_DIR MISC_MAN_DIR @@ -803,16 +811,8 @@ MISC_MAN_SUFFIX FILE_MAN_SUFFIX LIB_MAN_SUFFIX APP_MAN_SUFFIX -XTMALLOC_ZERO_CFLAGS -XMALLOC_ZERO_CFLAGS -MALLOC_ZERO_CFLAGS -LINT_FALSE -LINT_TRUE -LINT_FLAGS -LINT -XINERAMA_LIBS -XINERAMA_CFLAGS -PKG_CONFIG +distcleancheck_listfiles +CHANGELOG_CMD AM_BACKSLASH AM_DEFAULT_VERBOSITY CWARNFLAGS @@ -935,9 +935,10 @@ enable_fast_install with_gnu_ld enable_libtool_lock enable_silent_rules +enable_strict_compilation +with_release_version with_lint enable_malloc0returnsnull -with_release_version ' ac_precious_vars='build_alias host_alias @@ -1503,7 +1504,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures libXinerama 1.0.99.1 to adapt to many kinds of systems. +\`configure' configures libXinerama 1.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1573,7 +1574,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of libXinerama 1.0.99.1:";; + short | recursive ) echo "Configuration of libXinerama 1.1:";; esac cat <<\_ACEOF @@ -1592,6 +1593,9 @@ Optional Features: --disable-libtool-lock avoid locking (might break parallel builds) --enable-silent-rules less verbose build output (undo: `make V=1') --disable-silent-rules verbose build output (undo: `make V=0') + --enable-strict-compilation + Enable all warnings from compiler and make them + errors (default: disabled) --enable-malloc0returnsnull malloc(0) returns NULL (default: auto) @@ -1601,10 +1605,10 @@ Optional Packages: --with-pic try to use only PIC/non-PIC objects [default=use both] --with-gnu-ld assume the C compiler uses GNU ld [default=no] - --with-lint Use a lint-style source code checker (default: - disabled) --with-release-version=STRING Use release version string in package name + --with-lint Use a lint-style source code checker (default: + disabled) Some influential environment variables: CC C compiler command @@ -1687,7 +1691,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -libXinerama configure 1.0.99.1 +libXinerama configure 1.1 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1701,7 +1705,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by libXinerama $as_me 1.0.99.1, which was +It was created by libXinerama $as_me 1.1, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2550,7 +2554,7 @@ fi # Define the identity of the package. PACKAGE='libXinerama' - VERSION='1.0.99.1' + VERSION='1.1' cat >>confdefs.h <<_ACEOF @@ -4454,13 +4458,13 @@ if test "${lt_cv_nm_interface+set}" = set; then else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:4457: $ac_compile\"" >&5) + (eval echo "\"\$as_me:4461: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:4460: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:4464: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:4463: output\"" >&5) + (eval echo "\"\$as_me:4467: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -5666,7 +5670,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 5669 "configure"' > conftest.$ac_ext + echo '#line 5673 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7519,11 +7523,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7522: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7526: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7526: \$? = $ac_status" >&5 + echo "$as_me:7530: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7858,11 +7862,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7861: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7865: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7865: \$? = $ac_status" >&5 + echo "$as_me:7869: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7963,11 +7967,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7966: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7970: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7970: \$? = $ac_status" >&5 + echo "$as_me:7974: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -8018,11 +8022,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:8021: $lt_compile\"" >&5) + (eval echo "\"\$as_me:8025: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:8025: \$? = $ac_status" >&5 + echo "$as_me:8029: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -10821,7 +10825,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10824 "configure" +#line 10828 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10917,7 +10921,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10920 "configure" +#line 10924 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11144,6 +11148,209 @@ CC="$lt_save_CC" # Only expand once: + { $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C99" >&5 +$as_echo_n "checking for $CC option to accept ISO C99... " >&6; } +if test "${ac_cv_prog_cc_c99+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_cv_prog_cc_c99=no +ac_save_CC=$CC +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +#include <stdarg.h> +#include <stdbool.h> +#include <stdlib.h> +#include <wchar.h> +#include <stdio.h> + +// Check varargs macros. These examples are taken from C99 6.10.3.5. +#define debug(...) fprintf (stderr, __VA_ARGS__) +#define showlist(...) puts (#__VA_ARGS__) +#define report(test,...) ((test) ? puts (#test) : printf (__VA_ARGS__)) +static void +test_varargs_macros (void) +{ + int x = 1234; + int y = 5678; + debug ("Flag"); + debug ("X = %d\n", x); + showlist (The first, second, and third items.); + report (x>y, "x is %d but y is %d", x, y); +} + +// Check long long types. +#define BIG64 18446744073709551615ull +#define BIG32 4294967295ul +#define BIG_OK (BIG64 / BIG32 == 4294967297ull && BIG64 % BIG32 == 0) +#if !BIG_OK + your preprocessor is broken; +#endif +#if BIG_OK +#else + your preprocessor is broken; +#endif +static long long int bignum = -9223372036854775807LL; +static unsigned long long int ubignum = BIG64; + +struct incomplete_array +{ + int datasize; + double data[]; +}; + +struct named_init { + int number; + const wchar_t *name; + double average; +}; + +typedef const char *ccp; + +static inline int +test_restrict (ccp restrict text) +{ + // See if C++-style comments work. + // Iterate through items via the restricted pointer. + // Also check for declarations in for loops. + for (unsigned int i = 0; *(text+i) != '\0'; ++i) + continue; + return 0; +} + +// Check varargs and va_copy. +static void +test_varargs (const char *format, ...) +{ + va_list args; + va_start (args, format); + va_list args_copy; + va_copy (args_copy, args); + + const char *str; + int number; + float fnumber; + + while (*format) + { + switch (*format++) + { + case 's': // string + str = va_arg (args_copy, const char *); + break; + case 'd': // int + number = va_arg (args_copy, int); + break; + case 'f': // float + fnumber = va_arg (args_copy, double); + break; + default: + break; + } + } + va_end (args_copy); + va_end (args); +} + +int +main () +{ + + // Check bool. + _Bool success = false; + + // Check restrict. + if (test_restrict ("String literal") == 0) + success = true; + char *restrict newvar = "Another string"; + + // Check varargs. + test_varargs ("s, d' f .", "string", 65, 34.234); + test_varargs_macros (); + + // Check flexible array members. + struct incomplete_array *ia = + malloc (sizeof (struct incomplete_array) + (sizeof (double) * 10)); + ia->datasize = 10; + for (int i = 0; i < ia->datasize; ++i) + ia->data[i] = i * 1.234; + + // Check named initializers. + struct named_init ni = { + .number = 34, + .name = L"Test wide string", + .average = 543.34343, + }; + + ni.number = 58; + + int dynamic_array[ni.number]; + dynamic_array[ni.number - 1] = 543; + + // work around unused variable warnings + return (!success || bignum == 0LL || ubignum == 0uLL || newvar[0] == 'x' + || dynamic_array[ni.number - 1] != 543); + + ; + return 0; +} +_ACEOF +for ac_arg in '' -std=gnu99 -std=c99 -c99 -AC99 -xc99=all -qlanglvl=extc99 +do + CC="$ac_save_CC $ac_arg" + rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_prog_cc_c99=$ac_arg +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + +fi + +rm -f core conftest.err conftest.$ac_objext + test "x$ac_cv_prog_cc_c99" != "xno" && break +done +rm -f conftest.$ac_ext +CC=$ac_save_CC + +fi +# AC_CACHE_VAL +case "x$ac_cv_prog_cc_c99" in + x) + { $as_echo "$as_me:$LINENO: result: none needed" >&5 +$as_echo "none needed" >&6; } ;; + xno) + { $as_echo "$as_me:$LINENO: result: unsupported" >&5 +$as_echo "unsupported" >&6; } ;; + *) + CC="$CC $ac_cv_prog_cc_c99" + { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c99" >&5 +$as_echo "$ac_cv_prog_cc_c99" >&6; } ;; +esac + + + + if test "x$GCC" = xyes ; then @@ -11234,6 +11441,267 @@ AM_BACKSLASH='\' + + + + +# Check whether --enable-strict-compilation was given. +if test "${enable_strict_compilation+set}" = set; then + enableval=$enable_strict_compilation; STRICT_COMPILE=$enableval +else + STRICT_COMPILE=no +fi + +if test "x$STRICT_COMPILE" = "xyes"; then + { $as_echo "$as_me:$LINENO: checking whether __SUNPRO_C is declared" >&5 +$as_echo_n "checking whether __SUNPRO_C is declared... " >&6; } +if test "${ac_cv_have_decl___SUNPRO_C+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef __SUNPRO_C + (void) __SUNPRO_C; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl___SUNPRO_C=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl___SUNPRO_C=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl___SUNPRO_C" >&5 +$as_echo "$ac_cv_have_decl___SUNPRO_C" >&6; } +if test "x$ac_cv_have_decl___SUNPRO_C" = x""yes; then + SUNCC="yes" +else + SUNCC="no" +fi + + { $as_echo "$as_me:$LINENO: checking whether __INTEL_COMPILER is declared" >&5 +$as_echo_n "checking whether __INTEL_COMPILER is declared... " >&6; } +if test "${ac_cv_have_decl___INTEL_COMPILER+set}" = set; then + $as_echo_n "(cached) " >&6 +else + cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ +$ac_includes_default +int +main () +{ +#ifndef __INTEL_COMPILER + (void) __INTEL_COMPILER; +#endif + + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext +if { (ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_compile") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then + ac_cv_have_decl___INTEL_COMPILER=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_have_decl___INTEL_COMPILER=no +fi + +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_have_decl___INTEL_COMPILER" >&5 +$as_echo "$ac_cv_have_decl___INTEL_COMPILER" >&6; } +if test "x$ac_cv_have_decl___INTEL_COMPILER" = x""yes; then + INTELCC="yes" +else + INTELCC="no" +fi + + if test "x$GCC" = xyes ; then + STRICT_CFLAGS="-pedantic -Werror" + elif test "x$SUNCC" = "xyes"; then + STRICT_CFLAGS="-errwarn" + elif test "x$INTELCC" = "xyes"; then + STRICT_CFLAGS="-Werror" + fi +fi +CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" + + + + +# Check whether --with-release-version was given. +if test "${with_release_version+set}" = set; then + withval=$with_release_version; RELEASE_VERSION="$withval" +else + RELEASE_VERSION="" +fi + + if test "x$RELEASE_VERSION" != "x"; then + PACKAGE="$PACKAGE-$RELEASE_VERSION" + PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" + { $as_echo "$as_me:$LINENO: Building with package name set to $PACKAGE" >&5 +$as_echo "$as_me: Building with package name set to $PACKAGE" >&6;} + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1` +_ACEOF + + PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` + if test "x$PVM" = "x"; then + PVM="0" + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_MINOR $PVM +_ACEOF + + PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` + if test "x$PVP" = "x"; then + PVP="0" + fi + +cat >>confdefs.h <<_ACEOF +#define PACKAGE_VERSION_PATCHLEVEL $PVP +_ACEOF + + + +CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ +mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ +echo 'git directory not found: installing possibly empty changelog.' >&2)" + +distcleancheck_listfiles='find . -type f ! -name ChangeLog -print' + + + + + +if test x$APP_MAN_SUFFIX = x ; then + APP_MAN_SUFFIX=1 +fi +if test x$APP_MAN_DIR = x ; then + APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' +fi + +if test x$LIB_MAN_SUFFIX = x ; then + LIB_MAN_SUFFIX=3 +fi +if test x$LIB_MAN_DIR = x ; then + LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' +fi + +if test x$FILE_MAN_SUFFIX = x ; then + case $host_os in + solaris*) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; + esac +fi +if test x$FILE_MAN_DIR = x ; then + FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' +fi + +if test x$MISC_MAN_SUFFIX = x ; then + case $host_os in + solaris*) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; + esac +fi +if test x$MISC_MAN_DIR = x ; then + MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' +fi + +if test x$DRIVER_MAN_SUFFIX = x ; then + case $host_os in + solaris*) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; + esac +fi +if test x$DRIVER_MAN_DIR = x ; then + DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' +fi + +if test x$ADMIN_MAN_SUFFIX = x ; then + case $host_os in + solaris*) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; + esac +fi +if test x$ADMIN_MAN_DIR = x ; then + ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' +fi + + + + + + + + + + + + + + + + + # Check for dependencies @@ -11596,124 +12064,6 @@ fi - - -if test x$APP_MAN_SUFFIX = x ; then - APP_MAN_SUFFIX=1 -fi -if test x$APP_MAN_DIR = x ; then - APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' -fi - -if test x$LIB_MAN_SUFFIX = x ; then - LIB_MAN_SUFFIX=3 -fi -if test x$LIB_MAN_DIR = x ; then - LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' -fi - -if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; - esac -fi -if test x$FILE_MAN_DIR = x ; then - FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' -fi - -if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; - esac -fi -if test x$MISC_MAN_DIR = x ; then - MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' -fi - -if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; - esac -fi -if test x$DRIVER_MAN_DIR = x ; then - DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' -fi - -if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; - esac -fi -if test x$ADMIN_MAN_DIR = x ; then - ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' -fi - - - - - - - - - - - - - - - - - -# Check whether --with-release-version was given. -if test "${with_release_version+set}" = set; then - withval=$with_release_version; RELEASE_VERSION="$withval" -else - RELEASE_VERSION="" -fi - - if test "x$RELEASE_VERSION" != "x"; then - PACKAGE="$PACKAGE-$RELEASE_VERSION" - PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" - { $as_echo "$as_me:$LINENO: Building with package name set to $PACKAGE" >&5 -$as_echo "$as_me: Building with package name set to $PACKAGE" >&6;} - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_MAJOR `echo $PACKAGE_VERSION | cut -d . -f 1` -_ACEOF - - PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` - if test "x$PVM" = "x"; then - PVM="0" - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_MINOR $PVM -_ACEOF - - PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` - if test "x$PVP" = "x"; then - PVP="0" - fi - -cat >>confdefs.h <<_ACEOF -#define PACKAGE_VERSION_PATCHLEVEL $PVP -_ACEOF - - - -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ -mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" - -distcleancheck_listfiles='find . -type f ! -name ChangeLog -print' - - - ac_config_files="$ac_config_files Makefile src/Makefile man/Makefile xinerama.pc" cat >confcache <<\_ACEOF @@ -12171,7 +12521,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by libXinerama $as_me 1.0.99.1, which was +This file was extended by libXinerama $as_me 1.1, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -12234,7 +12584,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -libXinerama config.status 1.0.99.1 +libXinerama config.status 1.1 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/libXinerama/configure.ac b/libXinerama/configure.ac index cf7fc80d8..2be3ff3b4 100644 --- a/libXinerama/configure.ac +++ b/libXinerama/configure.ac @@ -22,19 +22,19 @@ dnl Process this file with autoconf to create configure. AC_PREREQ([2.57]) -AC_INIT(libXinerama, 1.0.99.1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libXinerama) +AC_INIT(libXinerama, 1.1, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], libXinerama) AM_INIT_AUTOMAKE([dist-bzip2]) AM_MAINTAINER_MODE # Require xorg-macros: XORG_CWARNFLAGS, XORG_CHANGELOG, XORG_WITH_LINT -m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.2 or later before running autoconf/autogen])]) -XORG_MACROS_VERSION(1.2) +m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.3 or later before running autoconf/autogen])]) +XORG_MACROS_VERSION(1.3) AM_CONFIG_HEADER(config.h) # Check for progs AC_PROG_CC AC_PROG_LIBTOOL -XORG_CWARNFLAGS +XORG_DEFAULT_OPTIONS # Check for dependencies PKG_CHECK_MODULES(XINERAMA, x11 xext xextproto [xineramaproto >= 1.1.99.1]) @@ -47,9 +47,6 @@ XORG_WITH_LINT LINT_FLAGS="${LINT_FLAGS} ${XINERAMA_CFLAGS}" XORG_CHECK_MALLOC_ZERO -XORG_MANPAGE_SECTIONS -XORG_RELEASE_VERSION -XORG_CHANGELOG AC_OUTPUT([Makefile src/Makefile diff --git a/pixman/configure b/pixman/configure index df72bda48..10d8afece 100644 --- a/pixman/configure +++ b/pixman/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for pixman 0.16.0. +# Generated by GNU Autoconf 2.63 for pixman 0.16.2. # # Report bugs to <"sandmann@daimi.au.dk">. # @@ -745,8 +745,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='pixman' PACKAGE_TARNAME='pixman' -PACKAGE_VERSION='0.16.0' -PACKAGE_STRING='pixman 0.16.0' +PACKAGE_VERSION='0.16.2' +PACKAGE_STRING='pixman 0.16.2' PACKAGE_BUGREPORT='"sandmann@daimi.au.dk"' # Factoring default headers for most tests. @@ -1506,7 +1506,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures pixman 0.16.0 to adapt to many kinds of systems. +\`configure' configures pixman 0.16.2 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1576,7 +1576,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of pixman 0.16.0:";; + short | recursive ) echo "Configuration of pixman 0.16.2:";; esac cat <<\_ACEOF @@ -1687,7 +1687,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -pixman configure 0.16.0 +pixman configure 0.16.2 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1701,7 +1701,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by pixman $as_me 0.16.0, which was +It was created by pixman $as_me 0.16.2, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2417,7 +2417,7 @@ fi # Define the identity of the package. PACKAGE='pixman' - VERSION='0.16.0' + VERSION='0.16.2' cat >>confdefs.h <<_ACEOF @@ -2647,6 +2647,8 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac +test_CFLAGS=${CFLAGS+set} # We may override autoconf default CFLAGS. + ac_ext=c ac_cpp='$CPP $CPPFLAGS' ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' @@ -4369,13 +4371,13 @@ if test "${lt_cv_nm_interface+set}" = set; then else lt_cv_nm_interface="BSD nm" echo "int some_variable = 0;" > conftest.$ac_ext - (eval echo "\"\$as_me:4372: $ac_compile\"" >&5) + (eval echo "\"\$as_me:4374: $ac_compile\"" >&5) (eval "$ac_compile" 2>conftest.err) cat conftest.err >&5 - (eval echo "\"\$as_me:4375: $NM \\\"conftest.$ac_objext\\\"\"" >&5) + (eval echo "\"\$as_me:4377: $NM \\\"conftest.$ac_objext\\\"\"" >&5) (eval "$NM \"conftest.$ac_objext\"" 2>conftest.err > conftest.out) cat conftest.err >&5 - (eval echo "\"\$as_me:4378: output\"" >&5) + (eval echo "\"\$as_me:4380: output\"" >&5) cat conftest.out >&5 if $GREP 'External.*some_variable' conftest.out > /dev/null; then lt_cv_nm_interface="MS dumpbin" @@ -5581,7 +5583,7 @@ ia64-*-hpux*) ;; *-*-irix6*) # Find out which ABI we are using. - echo '#line 5584 "configure"' > conftest.$ac_ext + echo '#line 5586 "configure"' > conftest.$ac_ext if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5 (eval $ac_compile) 2>&5 ac_status=$? @@ -7434,11 +7436,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7437: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7439: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7441: \$? = $ac_status" >&5 + echo "$as_me:7443: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7773,11 +7775,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7776: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7778: $lt_compile\"" >&5) (eval "$lt_compile" 2>conftest.err) ac_status=$? cat conftest.err >&5 - echo "$as_me:7780: \$? = $ac_status" >&5 + echo "$as_me:7782: \$? = $ac_status" >&5 if (exit $ac_status) && test -s "$ac_outfile"; then # The compiler can only warn and ignore the option if not recognized # So say no if there are warnings other than the usual output. @@ -7878,11 +7880,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7881: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7883: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7885: \$? = $ac_status" >&5 + echo "$as_me:7887: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -7933,11 +7935,11 @@ else -e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \ -e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \ -e 's:$: $lt_compiler_flag:'` - (eval echo "\"\$as_me:7936: $lt_compile\"" >&5) + (eval echo "\"\$as_me:7938: $lt_compile\"" >&5) (eval "$lt_compile" 2>out/conftest.err) ac_status=$? cat out/conftest.err >&5 - echo "$as_me:7940: \$? = $ac_status" >&5 + echo "$as_me:7942: \$? = $ac_status" >&5 if (exit $ac_status) && test -s out/conftest2.$ac_objext then # The compiler can only warn and ignore the option if not recognized @@ -10736,7 +10738,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10739 "configure" +#line 10741 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -10832,7 +10834,7 @@ else lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2 lt_status=$lt_dlunknown cat > conftest.$ac_ext <<_LT_EOF -#line 10835 "configure" +#line 10837 "configure" #include "confdefs.h" #if HAVE_DLFCN_H @@ -11757,6 +11759,16 @@ else fi +# Default CFLAGS to -O -g rather than just the -g from AC_PROG_CC +# if we're using Sun Studio and neither the user nor a config.site +# has set CFLAGS. +if test $SUNCC = yes && \ + test "$test_CFLAGS" == "" && \ + test "$CFLAGS" = "-g" +then + CFLAGS="-O -g" +fi + # # We ignore pixman_major in the version here because the major version should # always be encoded in the actual library name. Ie., the soname is: @@ -11767,13 +11779,13 @@ fi -LT_VERSION_INFO="16:0:16" +LT_VERSION_INFO="16:2:16" PIXMAN_VERSION_MAJOR=0 PIXMAN_VERSION_MINOR=16 -PIXMAN_VERSION_MICRO=0 +PIXMAN_VERSION_MICRO=2 @@ -12209,7 +12221,7 @@ have_vmx_intrinsics=no { $as_echo "$as_me:$LINENO: checking whether to use VMX/Altivec intrinsics" >&5 $as_echo_n "checking whether to use VMX/Altivec intrinsics... " >&6; } xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $VMX_CFLAGS" +CFLAGS="$VMX_CFLAGS $CFLAGS" cat >conftest.$ac_ext <<_ACEOF #if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)) @@ -12298,7 +12310,7 @@ have_arm_simd=no { $as_echo "$as_me:$LINENO: checking whether to use ARM SIMD assembler" >&5 $as_echo_n "checking whether to use ARM SIMD assembler... " >&6; } xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $ARM_SIMD_CFLAGS" +CFLAGS="$ARM_SIMD_CFLAGS $CFLAGS" cat >conftest.$ac_ext <<_ACEOF int main () { @@ -12382,7 +12394,7 @@ have_arm_neon=no { $as_echo "$as_me:$LINENO: checking whether to use ARM NEON" >&5 $as_echo_n "checking whether to use ARM NEON... " >&6; } xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $ARM_NEON_CFLAGS" +CFLAGS="$ARM_NEON_CFLAGS $CFLAGS" cat >conftest.$ac_ext <<_ACEOF #include <arm_neon.h> @@ -13404,7 +13416,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by pixman $as_me 0.16.0, which was +This file was extended by pixman $as_me 0.16.2, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -13467,7 +13479,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -pixman config.status 0.16.0 +pixman config.status 0.16.2 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/pixman/configure.ac b/pixman/configure.ac index 937fae787..a1c6949e9 100644 --- a/pixman/configure.ac +++ b/pixman/configure.ac @@ -54,7 +54,7 @@ AC_PREREQ([2.57]) m4_define([pixman_major], 0) m4_define([pixman_minor], 16) -m4_define([pixman_micro], 0) +m4_define([pixman_micro], 2) m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro]) @@ -65,6 +65,8 @@ AM_CONFIG_HEADER(config.h) AC_CANONICAL_HOST +test_CFLAGS=${CFLAGS+set} # We may override autoconf default CFLAGS. + AC_PROG_CC AC_PROG_LIBTOOL AC_CHECK_FUNCS([getisax]) @@ -75,6 +77,16 @@ AC_C_INLINE AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) AC_CHECK_DECL([__amd64], [AMD64_ABI="yes"], [AMD64_ABI="no"]) +# Default CFLAGS to -O -g rather than just the -g from AC_PROG_CC +# if we're using Sun Studio and neither the user nor a config.site +# has set CFLAGS. +if test $SUNCC = yes && \ + test "$test_CFLAGS" == "" && \ + test "$CFLAGS" = "-g" +then + CFLAGS="-O -g" +fi + # # We ignore pixman_major in the version here because the major version should # always be encoded in the actual library name. Ie., the soname is: @@ -306,7 +318,7 @@ fi have_vmx_intrinsics=no AC_MSG_CHECKING(whether to use VMX/Altivec intrinsics) xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $VMX_CFLAGS" +CFLAGS="$VMX_CFLAGS $CFLAGS" AC_COMPILE_IFELSE([ #if defined(__GNUC__) && (__GNUC__ < 3 || (__GNUC__ == 3 && __GNUC_MINOR__ < 4)) error "Need GCC >= 3.4 for sane altivec support" @@ -350,7 +362,7 @@ ARM_SIMD_CFLAGS="-mcpu=arm1136j-s" have_arm_simd=no AC_MSG_CHECKING(whether to use ARM SIMD assembler) xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $ARM_SIMD_CFLAGS" +CFLAGS="$ARM_SIMD_CFLAGS $CFLAGS" AC_COMPILE_IFELSE([ int main () { asm("uqadd8 r1, r1, r2"); @@ -389,7 +401,7 @@ ARM_NEON_CFLAGS="-mfpu=neon -mcpu=cortex-a8" have_arm_neon=no AC_MSG_CHECKING(whether to use ARM NEON) xserver_save_CFLAGS=$CFLAGS -CFLAGS="$CFLAGS $ARM_NEON_CFLAGS" +CFLAGS="$ARM_NEON_CFLAGS $CFLAGS" AC_COMPILE_IFELSE([ #include <arm_neon.h> int main () { diff --git a/pixman/pixman/pixman-access.c b/pixman/pixman/pixman-access.c index 532aa2ef7..d9fd38c15 100644 --- a/pixman/pixman/pixman-access.c +++ b/pixman/pixman/pixman-access.c @@ -230,7 +230,7 @@ fetch_scanline_a2r10g10b10 (pixman_image_t *image, const uint32_t *pixel = bits + x; const uint32_t *end = pixel + width; uint64_t *buffer = (uint64_t *)b; - + while (pixel < end) { uint32_t p = READ (image, pixel++); @@ -238,16 +238,16 @@ fetch_scanline_a2r10g10b10 (pixman_image_t *image, uint64_t r = (p >> 20) & 0x3ff; uint64_t g = (p >> 10) & 0x3ff; uint64_t b = p & 0x3ff; - + r = r << 6 | r >> 4; g = g << 6 | g >> 4; b = b << 6 | b >> 4; - - a <<= 62; + + a <<= 14; a |= a >> 2; a |= a >> 4; a |= a >> 8; - + *buffer++ = a << 48 | r << 32 | g << 16 | b; } } @@ -309,11 +309,11 @@ fetch_scanline_a2b10g10r10 (pixman_image_t *image, g = g << 6 | g >> 4; b = b << 6 | b >> 4; - a <<= 62; + a <<= 14; a |= a >> 2; a |= a >> 4; a |= a >> 8; - + *buffer++ = a << 48 | r << 32 | g << 16 | b; } } @@ -1115,18 +1115,18 @@ fetch_scanline_yv12 (pixman_image_t *image, { int16_t y, u, v; int32_t r, g, b; - + y = y_line[x + i] - 16; u = u_line[(x + i) >> 1] - 128; v = v_line[(x + i) >> 1] - 128; - + /* R = 1.164(Y - 16) + 1.596(V - 128) */ r = 0x012b27 * y + 0x019a2e * v; /* G = 1.164(Y - 16) - 0.813(V - 128) - 0.391(U - 128) */ g = 0x012b27 * y - 0x00d0f2 * v - 0x00647e * u; /* B = 1.164(Y - 16) + 2.018(U - 128) */ b = 0x012b27 * y + 0x0206a2 * u; - + *buffer++ = 0xff000000 | (r >= 0 ? r < 0x1000000 ? r & 0xff0000 : 0xff0000 : 0) | (g >= 0 ? g < 0x1000000 ? (g >> 8) & 0x00ff00 : 0x00ff00 : 0) | @@ -1148,16 +1148,16 @@ fetch_pixel_a2r10g10b10 (bits_image_t *image, uint64_t r = (p >> 20) & 0x3ff; uint64_t g = (p >> 10) & 0x3ff; uint64_t b = p & 0x3ff; - + r = r << 6 | r >> 4; g = g << 6 | g >> 4; b = b << 6 | b >> 4; - - a <<= 62; + + a <<= 14; a |= a >> 2; a |= a >> 4; a |= a >> 8; - + return a << 48 | r << 32 | g << 16 | b; } @@ -1197,7 +1197,7 @@ fetch_pixel_a2b10g10r10 (bits_image_t *image, g = g << 6 | g >> 4; b = b << 6 | b >> 4; - a <<= 62; + a <<= 14; a |= a >> 2; a |= a >> 4; a |= a >> 8; diff --git a/pixman/pixman/pixman-arm-neon.c b/pixman/pixman/pixman-arm-neon.c index 4125d1b0c..8a2d72ea3 100644 --- a/pixman/pixman/pixman-arm-neon.c +++ b/pixman/pixman/pixman-arm-neon.c @@ -64,6 +64,12 @@ unpack0565 (uint16x8_t rgb) return res; } +#ifdef USE_GCC_INLINE_ASM +/* Some versions of gcc have problems with vshll_n_u8 intrinsic (Bug 23576) */ +#define vshll_n_u8(a, n) ({ uint16x8_t r; \ + asm ("vshll.u8 %q0, %P1, %2\n" : "=w" (r) : "w" (a), "i" (n)); r; }) +#endif + static force_inline uint16x8_t pack0565 (uint8x8x4_t s) { @@ -2761,8 +2767,8 @@ arm_neon_fill (pixman_implementation_t *imp, pixman_implementation_t * _pixman_implementation_create_arm_neon (void) { - pixman_implementation_t *simd = _pixman_implementation_create_arm_simd (); - pixman_implementation_t *imp = _pixman_implementation_create (simd); + pixman_implementation_t *general = _pixman_implementation_create_fast_path (); + pixman_implementation_t *imp = _pixman_implementation_create (general); imp->composite = arm_neon_composite; #if 0 /* this code has some bugs */ diff --git a/pixman/pixman/pixman-bits-image.c b/pixman/pixman/pixman-bits-image.c index 6b8018985..4e78ce107 100644 --- a/pixman/pixman/pixman-bits-image.c +++ b/pixman/pixman/pixman-bits-image.c @@ -612,14 +612,14 @@ source_image_needs_out_of_bounds_workaround (bits_image_t *image) { if (!image->common.client_clip) { - /* There is no client clip, so the drawable in question - * is a window if the clip region extends beyond the - * drawable geometry. + /* There is no client clip, so if the clip region extends beyond the + * drawable geometry, it must be because the X server generated the + * bogus clip region. */ const pixman_box32_t *extents = pixman_region32_extents (&image->common.clip_region); - if (extents->x1 >= 0 && extents->x2 < image->width && - extents->y1 >= 0 && extents->y2 < image->height) + if (extents->x1 >= 0 && extents->x2 <= image->width && + extents->y1 >= 0 && extents->y2 <= image->height) { return FALSE; } diff --git a/pixman/pixman/pixman-cpu.c b/pixman/pixman/pixman-cpu.c index a2a7b8a1a..5d5469bb8 100644 --- a/pixman/pixman/pixman-cpu.c +++ b/pixman/pixman/pixman-cpu.c @@ -325,7 +325,7 @@ pixman_have_arm_neon (void) * that would lead to SIGILL instructions on old CPUs that don't have * it. */ -#if !defined(__amd64__) && !defined(__x86_64__) +#if !defined(__amd64__) && !defined(__x86_64__) && !defined(_M_AMD64) #ifdef HAVE_GETISAX #include <sys/auxv.h> diff --git a/pixman/pixman/pixman-fast-path.c b/pixman/pixman/pixman-fast-path.c index 7f805780f..5ab8d8c99 100644 --- a/pixman/pixman/pixman-fast-path.c +++ b/pixman/pixman/pixman-fast-path.c @@ -389,15 +389,11 @@ fast_composite_add_n_8888_8888_ca (pixman_implementation_t *imp, { ma = *mask++; - if (ma == 0xffffffff && srca == 0xff) - { - *dst = src; - } - else if (ma) + if (ma) { d = *dst; s = src; - + UN8x4_MUL_UN8x4_ADD_UN8x4 (s, ma, d); *dst = s; diff --git a/pixman/pixman/pixman-image.c b/pixman/pixman/pixman-image.c index 583195377..bba5fd68c 100644 --- a/pixman/pixman/pixman-image.c +++ b/pixman/pixman/pixman-image.c @@ -312,7 +312,7 @@ pixman_image_set_transform (pixman_image_t * image, { { { pixman_fixed_1, 0, 0 }, { 0, pixman_fixed_1, 0 }, - { 0, 0, pixman_fixed_1 }} + { 0, 0, pixman_fixed_1 } } }; image_common_t *common = (image_common_t *)image; @@ -342,10 +342,12 @@ pixman_image_set_transform (pixman_image_t * image, memcpy (common->transform, transform, sizeof(pixman_transform_t)); + result = TRUE; + out: image_property_changed (image); - return TRUE; + return result; } PIXMAN_EXPORT void diff --git a/pixman/pixman/pixman-sse2.c b/pixman/pixman/pixman-sse2.c index 727ad42ec..bb74882b2 100644 --- a/pixman/pixman/pixman-sse2.c +++ b/pixman/pixman/pixman-sse2.c @@ -359,13 +359,13 @@ in_over_2x128 (__m128i* src_lo, static force_inline void cache_prefetch (__m128i* addr) { - _mm_prefetch (addr, _MM_HINT_T0); + _mm_prefetch ((void const*)addr, _MM_HINT_T0); } static force_inline void cache_prefetch_next (__m128i* addr) { - _mm_prefetch (addr + 4, _MM_HINT_T0); /* 64 bytes ahead */ + _mm_prefetch ((void const *)(addr + 4), _MM_HINT_T0); /* 64 bytes ahead */ } /* load 4 pixels from a 16-byte boundary aligned address */ @@ -2628,12 +2628,18 @@ create_mask_2x32_64 (uint32_t mask0, return _mm_set_pi32 (mask0, mask1); } +/* Work around a code generation bug in Sun Studio 12. */ +#if defined(__SUNPRO_C) && (__SUNPRO_C >= 0x590) +# define create_mask_2x32_128(mask0, mask1) \ + (_mm_set_epi32 ((mask0), (mask1), (mask0), (mask1))) +#else static force_inline __m128i create_mask_2x32_128 (uint32_t mask0, uint32_t mask1) { return _mm_set_epi32 (mask0, mask1, mask0, mask1); } +#endif /* SSE2 code patch for fbcompose.c */ @@ -5600,7 +5606,7 @@ static const pixman_fast_path_t sse2_fast_paths[] = { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_x8r8g8b8, sse2_composite_over_x888_8_8888, 0 }, { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_a8r8g8b8, sse2_composite_over_x888_8_8888, 0 }, { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_a8, PIXMAN_x8b8g8r8, sse2_composite_over_x888_8_8888, 0 }, - { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_a8, PIXMAN_a8r8g8b8, sse2_composite_over_x888_8_8888, 0 }, + { PIXMAN_OP_OVER, PIXMAN_x8b8g8r8, PIXMAN_a8, PIXMAN_a8b8g8r8, sse2_composite_over_x888_8_8888, 0 }, #endif { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_a8r8g8b8, sse2_composite_over_x888_n_8888, NEED_SOLID_MASK }, { PIXMAN_OP_OVER, PIXMAN_x8r8g8b8, PIXMAN_a8, PIXMAN_x8r8g8b8, sse2_composite_over_x888_n_8888, NEED_SOLID_MASK }, diff --git a/pixman/pixman/pixman-version.h b/pixman/pixman/pixman-version.h index 65df97052..79d74fed4 100644 --- a/pixman/pixman/pixman-version.h +++ b/pixman/pixman/pixman-version.h @@ -33,9 +33,9 @@ #define PIXMAN_VERSION_MAJOR 0 #define PIXMAN_VERSION_MINOR 16 -#define PIXMAN_VERSION_MICRO 0 +#define PIXMAN_VERSION_MICRO 2 -#define PIXMAN_VERSION_STRING "0.16.0" +#define PIXMAN_VERSION_STRING "0.16.2" #define PIXMAN_VERSION_ENCODE(major, minor, micro) ( \ ((major) * 10000) \ diff --git a/pixman/pixman/pixman.h b/pixman/pixman/pixman.h index 969d42702..5b90a0c8d 100644 --- a/pixman/pixman/pixman.h +++ b/pixman/pixman/pixman.h @@ -222,8 +222,6 @@ pixman_bool_t pixman_transform_from_pixman_f_transform (struct pixman_transform const struct pixman_f_transform *ft); void pixman_f_transform_from_pixman_transform (struct pixman_f_transform *ft, const struct pixman_transform *t); -pixman_bool_t pixman_transform_from_pixman_f_transform (struct pixman_transform *t, - const struct pixman_f_transform *ft); pixman_bool_t pixman_f_transform_invert (struct pixman_f_transform *dst, const struct pixman_f_transform *src); pixman_bool_t pixman_f_transform_point (const struct pixman_f_transform *t, diff --git a/pixman/test/blitters-test.c b/pixman/test/blitters-test.c index 23de6c2f5..ba9900a79 100644 --- a/pixman/test/blitters-test.c +++ b/pixman/test/blitters-test.c @@ -314,6 +314,9 @@ free_random_image (uint32_t initcrc, uint32_t *data = pixman_image_get_data (img); uint32_t mask = (1 << PIXMAN_FORMAT_DEPTH (fmt)) - 1; + if (PIXMAN_FORMAT_TYPE (fmt) == PIXMAN_TYPE_BGRA) + mask <<= (PIXMAN_FORMAT_BPP (fmt) - PIXMAN_FORMAT_DEPTH (fmt)); + for (i = 0; i < 32; i++) mask |= mask << (i * PIXMAN_FORMAT_BPP (fmt)); @@ -637,7 +640,7 @@ main (int argc, char *argv[]) /* Predefined value for running with all the fastpath functions disabled. It needs to be updated every time when changes are introduced to this program or behavior of pixman changes! */ - if (crc == 0xFE1244BF) + if (crc == 0x06D8EDB6) { printf ("blitters test passed\n"); } diff --git a/pixman/test/fetch-test.c b/pixman/test/fetch-test.c index c41f1a63e..6306a4c42 100644 --- a/pixman/test/fetch-test.c +++ b/pixman/test/fetch-test.c @@ -2,6 +2,7 @@ #include <stdlib.h> #include <stdio.h> #include "pixman.h" +#include <config.h> #define SIZE 1024 @@ -34,8 +35,13 @@ testcase_t testcases[] = { .format = PIXMAN_g1, .width = 8, .height = 2, .stride = 4, +#ifdef WORDS_BIGENDIAN + .src = { 0xaa000000, + 0x55000000 }, +#else .src = { 0x00000055, 0x000000aa }, +#endif .dst = { 0x00ffffff, 0x00000000, 0x00ffffff, 0x00000000, 0x00ffffff, 0x00000000, 0x00ffffff, 0x00000000, 0x00000000, 0x00ffffff, 0x00000000, 0x00ffffff, 0x00000000, 0x00ffffff, 0x00000000, 0x00ffffff }, .indexed = &mono_pallete, @@ -51,14 +57,24 @@ testcase_t testcases[] = { 0x00898989, 0x00ababab, 0x00cdcdcd, 0x00efefef, }, }, #endif + /* FIXME: make this work on big endian */ { .format = PIXMAN_yv12, .width = 8, .height = 2, .stride = 8, +#ifdef WORDS_BIGENDIAN + .src = { 0x00ff00ff, 0x00ff00ff, + 0xff00ff00, 0xff00ff00, + 0x80ff8000, + 0x800080ff + }, +#else .src = { 0xff00ff00, 0xff00ff00, 0x00ff00ff, 0x00ff00ff, 0x0080ff80, - 0xff800080}, + 0xff800080 + }, +#endif .dst = { 0xff000000, 0xffffffff, 0xffb80000, 0xffffe113, 0xff000000, 0xffffffff, 0xff0023ee, 0xff4affff, diff --git a/xkbcomp/ChangeLog b/xkbcomp/ChangeLog index af19a1749..6d33aea76 100644 --- a/xkbcomp/ChangeLog +++ b/xkbcomp/ChangeLog @@ -1,3 +1,24 @@ +commit a5160032d7e46473b8702b87a546071fc0c0978c +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Sat Oct 3 21:12:47 2009 +1000 + + xkbcomp 1.1.1 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit a36ca5ba61e2b97398a79713922644fee1a263d1 +Author: Rami Ylimaki <ext-rami.ylimaki@nokia.com> +Date: Wed Aug 5 17:16:16 2009 +0300 + + xkbcomp: Remove output file if closing fails. + + Without the fix xkbcomp may leave a truncated file in the filesystem + if there is not enough disk space. Using the truncated file leads to + problems. + + Signed-off-by: Rami Ylimaki <ext-rami.ylimaki@nokia.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + commit 2cc1dc9a327a5100043d3d54e899b98b81cdf5f5 Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Thu Jul 9 08:34:21 2009 +1000 diff --git a/xkbcomp/Makefile.in b/xkbcomp/Makefile.in index b34ef7a27..5dbcdf83c 100644 --- a/xkbcomp/Makefile.in +++ b/xkbcomp/Makefile.in @@ -91,11 +91,26 @@ am__depfiles_maybe = depfiles am__mv = mv -f COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) +AM_V_CC = $(am__v_CC_$(V)) +am__v_CC_ = $(am__v_CC_$(AM_DEFAULT_VERBOSITY)) +am__v_CC_0 = @echo " CC " $@; +AM_V_at = $(am__v_at_$(V)) +am__v_at_ = $(am__v_at_$(AM_DEFAULT_VERBOSITY)) +am__v_at_0 = @ CCLD = $(CC) LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) $(AM_LDFLAGS) $(LDFLAGS) -o $@ +AM_V_CCLD = $(am__v_CCLD_$(V)) +am__v_CCLD_ = $(am__v_CCLD_$(AM_DEFAULT_VERBOSITY)) +am__v_CCLD_0 = @echo " CCLD " $@; @MAINTAINER_MODE_FALSE@am__skipyacc = test -f $@ || YACCCOMPILE = $(YACC) $(YFLAGS) $(AM_YFLAGS) +AM_V_YACC = $(am__v_YACC_$(V)) +am__v_YACC_ = $(am__v_YACC_$(AM_DEFAULT_VERBOSITY)) +am__v_YACC_0 = @echo " YACC " $@; YLWRAP = $(top_srcdir)/ylwrap +AM_V_GEN = $(am__v_GEN_$(V)) +am__v_GEN_ = $(am__v_GEN_$(AM_DEFAULT_VERBOSITY)) +am__v_GEN_0 = @echo " GEN " $@; SOURCES = $(xkbcomp_SOURCES) DIST_SOURCES = $(xkbcomp_SOURCES) am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; @@ -136,6 +151,7 @@ ACLOCAL = @ACLOCAL@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@ ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@ AMTAR = @AMTAR@ +AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@ APP_MAN_DIR = @APP_MAN_DIR@ APP_MAN_SUFFIX = @APP_MAN_SUFFIX@ AUTOCONF = @AUTOCONF@ @@ -406,7 +422,7 @@ clean-binPROGRAMS: -test -z "$(bin_PROGRAMS)" || rm -f $(bin_PROGRAMS) xkbcomp$(EXEEXT): $(xkbcomp_OBJECTS) $(xkbcomp_DEPENDENCIES) @rm -f xkbcomp$(EXEEXT) - $(LINK) $(xkbcomp_OBJECTS) $(xkbcomp_LDADD) $(LIBS) + $(AM_V_CCLD)$(LINK) $(xkbcomp_OBJECTS) $(xkbcomp_LDADD) $(LIBS) mostlyclean-compile: -rm -f *.$(OBJEXT) @@ -435,21 +451,23 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/xkbscan.Po@am__quote@ .c.o: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $< +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c $< .c.obj: -@am__fastdepCC_TRUE@ $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` -@am__fastdepCC_TRUE@ $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_TRUE@ $(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ `$(CYGPATH_W) '$<'` +@am__fastdepCC_TRUE@ $(AM_V_at)$(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po +@am__fastdepCC_FALSE@ $(AM_V_CC) @AM_BACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ source='$<' object='$@' libtool=no @AMDEPBACKSLASH@ @AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@ @am__fastdepCC_FALSE@ $(COMPILE) -c `$(CYGPATH_W) '$<'` .y.c: - $(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE) + $(AM_V_YACC)$(am__skipyacc) $(SHELL) $(YLWRAP) $< y.tab.c $@ y.tab.h $*.h y.output $*.output -- $(YACCCOMPILE) install-appmanDATA: $(appman_DATA) @$(NORMAL_INSTALL) test -z "$(appmandir)" || $(MKDIR_P) "$(DESTDIR)$(appmandir)" diff --git a/xkbcomp/aclocal.m4 b/xkbcomp/aclocal.m4 index c9548c2ae..d2b23f6d9 100644 --- a/xkbcomp/aclocal.m4 +++ b/xkbcomp/aclocal.m4 @@ -175,545 +175,6 @@ else fi[]dnl ])# PKG_CHECK_MODULES -dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. -dnl -dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved. -dnl -dnl Permission is hereby granted, free of charge, to any person obtaining a -dnl copy of this software and associated documentation files (the -dnl "Software"), to deal in the Software without restriction, including -dnl without limitation the rights to use, copy, modify, merge, publish, -dnl distribute, and/or sell copies of the Software, and to permit persons -dnl to whom the Software is furnished to do so, provided that the above -dnl copyright notice(s) and this permission notice appear in all copies of -dnl the Software and that both the above copyright notice(s) and this -dnl permission notice appear in supporting documentation. -dnl -dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT -dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR -dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL -dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING -dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, -dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION -dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. -dnl -dnl Except as contained in this notice, the name of a copyright holder -dnl shall not be used in advertising or otherwise to promote the sale, use -dnl or other dealings in this Software without prior written authorization -dnl of the copyright holder. - -# XORG_MACROS_VERSION(required-version) -# ------------------------------------- -# Minimum version: 1.1.0 -# -# If you're using a macro added in Version 1.1 or newer, include this in -# your configure.ac with the minimum required version, such as: -# XORG_MACROS_VERSION(1.1) -# -# To force at least a version with this macro defined, also add: -# m4_ifndef([XORG_MACROS_VERSION], [AC_FATAL([must install xorg-macros 1.1 or later before running autoconf/autogen])]) -# -# -# See the "minimum version" comment for each macro you use to see what -# version you require. -AC_DEFUN([XORG_MACROS_VERSION],[ - [XORG_MACROS_needed_version=$1 - XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'` - XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`] - AC_MSG_CHECKING([if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}]) - [XORG_MACROS_version=1.2.1 - XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'` - XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'`] - if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then - AC_MSG_ERROR([configure built with incompatible version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.x]) - fi - if test $XORG_MACROS_minor -lt $XORG_MACROS_needed_minor ; then - AC_MSG_ERROR([configure built with too old of a version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.${XORG_MACROS_minor}.0 or newer]) - fi - AC_MSG_RESULT([yes, $XORG_MACROS_version]) -]) # XORG_MACROS_VERSION - -# XORG_PROG_RAWCPP() -# ------------------ -# Minimum version: 1.0.0 -# -# Find cpp program and necessary flags for use in pre-processing text files -# such as man pages and config files -AC_DEFUN([XORG_PROG_RAWCPP],[ -AC_REQUIRE([AC_PROG_CPP]) -AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], - [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) - -# Check for flag to avoid builtin definitions - assumes unix is predefined, -# which is not the best choice for supporting other OS'es, but covers most -# of the ones we need for now. -AC_MSG_CHECKING([if $RAWCPP requires -undef]) -AC_LANG_CONFTEST([Does cpp redefine unix ?]) -if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - AC_MSG_RESULT([no]) -else - if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - RAWCPPFLAGS=-undef - AC_MSG_RESULT([yes]) - # under Cygwin unix is still defined even with -undef - elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then - RAWCPPFLAGS="-undef -ansi" - AC_MSG_RESULT([yes, with -ansi]) - else - AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) - fi -fi -rm -f conftest.$ac_ext - -AC_MSG_CHECKING([if $RAWCPP requires -traditional]) -AC_LANG_CONFTEST([Does cpp preserve "whitespace"?]) -if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then - AC_MSG_RESULT([no]) -else - if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then - RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" - AC_MSG_RESULT([yes]) - else - AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) - fi -fi -rm -f conftest.$ac_ext -AC_SUBST(RAWCPPFLAGS) -]) # XORG_PROG_RAWCPP - -# XORG_MANPAGE_SECTIONS() -# ----------------------- -# Minimum version: 1.0.0 -# -# Determine which sections man pages go in for the different man page types -# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. -# Not sure if there's any better way than just hardcoding by OS name. -# Override default settings by setting environment variables - -AC_DEFUN([XORG_MANPAGE_SECTIONS],[ -AC_REQUIRE([AC_CANONICAL_HOST]) - -if test x$APP_MAN_SUFFIX = x ; then - APP_MAN_SUFFIX=1 -fi -if test x$APP_MAN_DIR = x ; then - APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' -fi - -if test x$LIB_MAN_SUFFIX = x ; then - LIB_MAN_SUFFIX=3 -fi -if test x$LIB_MAN_DIR = x ; then - LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' -fi - -if test x$FILE_MAN_SUFFIX = x ; then - case $host_os in - solaris*) FILE_MAN_SUFFIX=4 ;; - *) FILE_MAN_SUFFIX=5 ;; - esac -fi -if test x$FILE_MAN_DIR = x ; then - FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' -fi - -if test x$MISC_MAN_SUFFIX = x ; then - case $host_os in - solaris*) MISC_MAN_SUFFIX=5 ;; - *) MISC_MAN_SUFFIX=7 ;; - esac -fi -if test x$MISC_MAN_DIR = x ; then - MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' -fi - -if test x$DRIVER_MAN_SUFFIX = x ; then - case $host_os in - solaris*) DRIVER_MAN_SUFFIX=7 ;; - *) DRIVER_MAN_SUFFIX=4 ;; - esac -fi -if test x$DRIVER_MAN_DIR = x ; then - DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' -fi - -if test x$ADMIN_MAN_SUFFIX = x ; then - case $host_os in - solaris*) ADMIN_MAN_SUFFIX=1m ;; - *) ADMIN_MAN_SUFFIX=8 ;; - esac -fi -if test x$ADMIN_MAN_DIR = x ; then - ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' -fi - - -AC_SUBST([APP_MAN_SUFFIX]) -AC_SUBST([LIB_MAN_SUFFIX]) -AC_SUBST([FILE_MAN_SUFFIX]) -AC_SUBST([MISC_MAN_SUFFIX]) -AC_SUBST([DRIVER_MAN_SUFFIX]) -AC_SUBST([ADMIN_MAN_SUFFIX]) -AC_SUBST([APP_MAN_DIR]) -AC_SUBST([LIB_MAN_DIR]) -AC_SUBST([FILE_MAN_DIR]) -AC_SUBST([MISC_MAN_DIR]) -AC_SUBST([DRIVER_MAN_DIR]) -AC_SUBST([ADMIN_MAN_DIR]) -]) # XORG_MANPAGE_SECTIONS - -# XORG_CHECK_LINUXDOC -# ------------------- -# Minimum version: 1.0.0 -# -# Defines the variable MAKE_TEXT if the necessary tools and -# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. -# Whether or not the necessary tools and files are found can be checked -# with the AM_CONDITIONAL "BUILD_LINUXDOC" -AC_DEFUN([XORG_CHECK_LINUXDOC],[ -if test x$XORG_SGML_PATH = x ; then - XORG_SGML_PATH=$prefix/share/sgml -fi -HAVE_DEFS_ENT= - -if test x"$cross_compiling" = x"yes" ; then - HAVE_DEFS_ENT=no -else - AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) -fi - -AC_PATH_PROG(LINUXDOC, linuxdoc) -AC_PATH_PROG(PS2PDF, ps2pdf) - -AC_MSG_CHECKING([Whether to build documentation]) - -if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then - BUILDDOC=yes -else - BUILDDOC=no -fi - -AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) - -AC_MSG_RESULT([$BUILDDOC]) - -AC_MSG_CHECKING([Whether to build pdf documentation]) - -if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then - BUILDPDFDOC=yes -else - BUILDPDFDOC=no -fi - -AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) - -AC_MSG_RESULT([$BUILDPDFDOC]) - -MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt" -MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" -MAKE_PDF="$PS2PDF" -MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" - -AC_SUBST(MAKE_TEXT) -AC_SUBST(MAKE_PS) -AC_SUBST(MAKE_PDF) -AC_SUBST(MAKE_HTML) -]) # XORG_CHECK_LINUXDOC - -# XORG_CHECK_DOCBOOK -# ------------------- -# Minimum version: 1.0.0 -# -# Checks for the ability to build output formats from SGML DocBook source. -# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" -# indicates whether the necessary tools and files are found and, if set, -# $(MAKE_XXX) blah.sgml will produce blah.xxx. -AC_DEFUN([XORG_CHECK_DOCBOOK],[ -if test x$XORG_SGML_PATH = x ; then - XORG_SGML_PATH=$prefix/share/sgml -fi -HAVE_DEFS_ENT= -BUILDTXTDOC=no -BUILDPDFDOC=no -BUILDPSDOC=no -BUILDHTMLDOC=no - -AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) - -AC_PATH_PROG(DOCBOOKPS, docbook2ps) -AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) -AC_PATH_PROG(DOCBOOKHTML, docbook2html) -AC_PATH_PROG(DOCBOOKTXT, docbook2txt) - -AC_MSG_CHECKING([Whether to build text documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x && - test x$BUILD_TXTDOC != xno; then - BUILDTXTDOC=yes -fi -AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) -AC_MSG_RESULT([$BUILDTXTDOC]) - -AC_MSG_CHECKING([Whether to build PDF documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x && - test x$BUILD_PDFDOC != xno; then - BUILDPDFDOC=yes -fi -AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) -AC_MSG_RESULT([$BUILDPDFDOC]) - -AC_MSG_CHECKING([Whether to build PostScript documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x && - test x$BUILD_PSDOC != xno; then - BUILDPSDOC=yes -fi -AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) -AC_MSG_RESULT([$BUILDPSDOC]) - -AC_MSG_CHECKING([Whether to build HTML documentation]) -if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x && - test x$BUILD_HTMLDOC != xno; then - BUILDHTMLDOC=yes -fi -AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) -AC_MSG_RESULT([$BUILDHTMLDOC]) - -MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" -MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" -MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" -MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" - -AC_SUBST(MAKE_TEXT) -AC_SUBST(MAKE_PS) -AC_SUBST(MAKE_PDF) -AC_SUBST(MAKE_HTML) -]) # XORG_CHECK_DOCBOOK - -# XORG_CHECK_MALLOC_ZERO -# ---------------------- -# Minimum version: 1.0.0 -# -# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if -# malloc(0) returns NULL. Packages should add one of these cflags to -# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. -AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ -AC_ARG_ENABLE(malloc0returnsnull, - AC_HELP_STRING([--enable-malloc0returnsnull], - [malloc(0) returns NULL (default: auto)]), - [MALLOC_ZERO_RETURNS_NULL=$enableval], - [MALLOC_ZERO_RETURNS_NULL=auto]) - -AC_MSG_CHECKING([whether malloc(0) returns NULL]) -if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then - AC_RUN_IFELSE([ -char *malloc(); -char *realloc(); -char *calloc(); -main() { - char *m0, *r0, *c0, *p; - m0 = malloc(0); - p = malloc(10); - r0 = realloc(p,0); - c0 = calloc(0); - exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); -}], - [MALLOC_ZERO_RETURNS_NULL=yes], - [MALLOC_ZERO_RETURNS_NULL=no]) -fi -AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) - -if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then - MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" - XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS - XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" -else - MALLOC_ZERO_CFLAGS="" - XMALLOC_ZERO_CFLAGS="" - XTMALLOC_ZERO_CFLAGS="" -fi - -AC_SUBST([MALLOC_ZERO_CFLAGS]) -AC_SUBST([XMALLOC_ZERO_CFLAGS]) -AC_SUBST([XTMALLOC_ZERO_CFLAGS]) -]) # XORG_CHECK_MALLOC_ZERO - -# XORG_WITH_LINT() -# ---------------- -# Minimum version: 1.1.0 -# -# Sets up flags for source checkers such as lint and sparse if --with-lint -# is specified. (Use --with-lint=sparse for sparse.) -# Sets $LINT to name of source checker passed with --with-lint (default: lint) -# Sets $LINT_FLAGS to flags to pass to source checker -# Sets LINT automake conditional if enabled (default: disabled) -# -AC_DEFUN([XORG_WITH_LINT],[ - -# Allow checking code with lint, sparse, etc. -AC_ARG_WITH(lint, [AC_HELP_STRING([--with-lint], - [Use a lint-style source code checker (default: disabled)])], - [use_lint=$withval], [use_lint=no]) -if test "x$use_lint" = "xyes" ; then - LINT="lint" -else - LINT="$use_lint" -fi -if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then - case $LINT in - lint|*/lint) - case $host_os in - solaris*) - LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" - ;; - esac - ;; - esac -fi - -AC_SUBST(LINT) -AC_SUBST(LINT_FLAGS) -AM_CONDITIONAL(LINT, [test x$LINT != xno]) - -]) # XORG_WITH_LINT - -# XORG_LINT_LIBRARY(LIBNAME) -# -------------------------- -# Minimum version: 1.1.0 -# -# Sets up flags for building lint libraries for checking programs that call -# functions in the library. -# Disabled by default, enable with --enable-lint-library -# Sets: -# @LINTLIB@ - name of lint library file to make -# MAKE_LINT_LIB - automake conditional -# - -AC_DEFUN([XORG_LINT_LIBRARY],[ -AC_REQUIRE([XORG_WITH_LINT]) -# Build lint "library" for more indepth checks of programs calling this library -AC_ARG_ENABLE(lint-library, [AC_HELP_STRING([--enable-lint-library], - [Create lint library (default: disabled)])], - [make_lint_lib=$enableval], [make_lint_lib=no]) -if test "x$make_lint_lib" != "xno" ; then - if test "x$LINT" = "xno" ; then - AC_MSG_ERROR([Cannot make lint library without --with-lint]) - fi - if test "x$make_lint_lib" = "xyes" ; then - LINTLIB=llib-l$1.ln - else - LINTLIB=$make_lint_lib - fi -fi -AC_SUBST(LINTLIB) -AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) - -]) # XORG_LINT_LIBRARY - -# XORG_CWARNFLAGS -# --------------- -# Minimum version: 1.2.0 -# -# Defines CWARNFLAGS to enable C compiler warnings. -# -AC_DEFUN([XORG_CWARNFLAGS], [ -AC_REQUIRE([AC_PROG_CC]) -if test "x$GCC" = xyes ; then - CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ --Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ --Wbad-function-cast" - case `gcc -dumpversion` in - 3.4.* | 4.*) - CWARNFLAGS+=" -Wold-style-definition -Wdeclaration-after-statement" - ;; - esac -else - AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) - if test "x$SUNCC" = "xyes"; then - CWARNFLAGS="-v" - fi -fi -AC_SUBST(CWARNFLAGS) -]) # XORG_CWARNFLAGS -dnl Copyright 2005 Red Hat, Inc -dnl -dnl Permission to use, copy, modify, distribute, and sell this software and its -dnl documentation for any purpose is hereby granted without fee, provided that -dnl the above copyright notice appear in all copies and that both that -dnl copyright notice and this permission notice appear in supporting -dnl documentation. -dnl -dnl The above copyright notice and this permission notice shall be included -dnl in all copies or substantial portions of the Software. -dnl -dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS -dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF -dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. -dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR -dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, -dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR -dnl OTHER DEALINGS IN THE SOFTWARE. -dnl -dnl Except as contained in this notice, the name of the copyright holders shall -dnl not be used in advertising or otherwise to promote the sale, use or -dnl other dealings in this Software without prior written authorization -dnl from the copyright holders. -dnl - -# XORG_RELEASE_VERSION -# -------------------- -# Adds --with/without-release-string and changes the PACKAGE and -# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If -# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also -# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. - -AC_DEFUN([XORG_RELEASE_VERSION],[ - AC_ARG_WITH(release-version, - AC_HELP_STRING([--with-release-version=STRING], - [Use release version string in package name]), - [RELEASE_VERSION="$withval"], - [RELEASE_VERSION=""]) - if test "x$RELEASE_VERSION" != "x"; then - PACKAGE="$PACKAGE-$RELEASE_VERSION" - PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" - AC_MSG_NOTICE([Building with package name set to $PACKAGE]) - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], - [`echo $PACKAGE_VERSION | cut -d . -f 1`], - [Major version of this package]) - PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` - if test "x$PVM" = "x"; then - PVM="0" - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], - [$PVM], - [Minor version of this package]) - PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` - if test "x$PVP" = "x"; then - PVP="0" - fi - AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], - [$PVP], - [Patch version of this package]) -]) - -# XORG_CHANGELOG() -# ---------------- -# Minimum version: 1.2.0 -# -# Defines the variable CHANGELOG_CMD as the command to generate -# ChangeLog from git. -# -# Arrange that distcleancheck ignores ChangeLog left over by distclean. -# -AC_DEFUN([XORG_CHANGELOG], [ -CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ -mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ -echo 'git directory not found: installing possibly empty changelog.' >&2)" -AC_SUBST([CHANGELOG_CMD]) -AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print']) -]) # XORG_CHANGELOG - # Copyright (C) 2002, 2003, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation @@ -1553,6 +1014,33 @@ Check your system clock]) fi AC_MSG_RESULT(yes)]) +# Copyright (C) 2009 Free Software Foundation, Inc. +# +# This file is free software; the Free Software Foundation +# gives unlimited permission to copy and/or distribute it, +# with or without modifications, as long as this notice is preserved. + +# serial 1 + +# AM_SILENT_RULES([DEFAULT]) +# -------------------------- +# Enable less verbose build rules; with the default set to DEFAULT +# (`yes' being less verbose, `no' or empty being verbose). +AC_DEFUN([AM_SILENT_RULES], +[AC_ARG_ENABLE([silent-rules], +[ --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0')]) +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=m4_if([$1], [yes], [0], [1]);; +esac +AC_SUBST([AM_DEFAULT_VERBOSITY])dnl +AM_BACKSLASH='\' +AC_SUBST([AM_BACKSLASH])dnl +_AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl +]) + # Copyright (C) 2001, 2003, 2005 Free Software Foundation, Inc. # # This file is free software; the Free Software Foundation @@ -1696,3 +1184,583 @@ AC_SUBST([am__tar]) AC_SUBST([am__untar]) ]) # _AM_PROG_TAR +dnl xorg-macros.m4. Generated from xorg-macros.m4.in xorgversion.m4 by configure. +dnl +dnl Copyright 2005-2006 Sun Microsystems, Inc. All rights reserved. +dnl +dnl Permission is hereby granted, free of charge, to any person obtaining a +dnl copy of this software and associated documentation files (the +dnl "Software"), to deal in the Software without restriction, including +dnl without limitation the rights to use, copy, modify, merge, publish, +dnl distribute, and/or sell copies of the Software, and to permit persons +dnl to whom the Software is furnished to do so, provided that the above +dnl copyright notice(s) and this permission notice appear in all copies of +dnl the Software and that both the above copyright notice(s) and this +dnl permission notice appear in supporting documentation. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT +dnl OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR +dnl HOLDERS INCLUDED IN THIS NOTICE BE LIABLE FOR ANY CLAIM, OR ANY SPECIAL +dnl INDIRECT OR CONSEQUENTIAL DAMAGES, OR ANY DAMAGES WHATSOEVER RESULTING +dnl FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, +dnl NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION +dnl WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. +dnl +dnl Except as contained in this notice, the name of a copyright holder +dnl shall not be used in advertising or otherwise to promote the sale, use +dnl or other dealings in this Software without prior written authorization +dnl of the copyright holder. + +# XORG_MACROS_VERSION(required-version) +# ------------------------------------- +# Minimum version: 1.1.0 +# +# If you're using a macro added in Version 1.1 or newer, include this in +# your configure.ac with the minimum required version, such as: +# XORG_MACROS_VERSION(1.1) +# +# To ensure that this macro is defined, also add: +# m4_ifndef([XORG_MACROS_VERSION], +# [m4_fatal([must install xorg-macros 1.1 or later before running autoconf/autogen])]) +# +# +# See the "minimum version" comment for each macro you use to see what +# version you require. +m4_defun([XORG_MACROS_VERSION],[ +m4_define([vers_have], [1.3.0]) +m4_define([maj_have], m4_substr(vers_have, 0, m4_index(vers_have, [.]))) +m4_define([maj_needed], m4_substr([$1], 0, m4_index([$1], [.]))) +m4_if(m4_cmp(maj_have, maj_needed), 0,, + [m4_fatal([xorg-macros major version ]maj_needed[ is required but ]vers_have[ found])]) +m4_if(m4_version_compare(vers_have, [$1]), -1, + [m4_fatal([xorg-macros version $1 or higher is required but ]vers_have[ found])]) +m4_undefine([vers_have]) +m4_undefine([maj_have]) +m4_undefine([maj_needed]) +]) # XORG_MACROS_VERSION + +# XORG_PROG_RAWCPP() +# ------------------ +# Minimum version: 1.0.0 +# +# Find cpp program and necessary flags for use in pre-processing text files +# such as man pages and config files +AC_DEFUN([XORG_PROG_RAWCPP],[ +AC_REQUIRE([AC_PROG_CPP]) +AC_PATH_PROGS(RAWCPP, [cpp], [${CPP}], + [$PATH:/bin:/usr/bin:/usr/lib:/usr/libexec:/usr/ccs/lib:/usr/ccs/lbin:/lib]) + +# Check for flag to avoid builtin definitions - assumes unix is predefined, +# which is not the best choice for supporting other OS'es, but covers most +# of the ones we need for now. +AC_MSG_CHECKING([if $RAWCPP requires -undef]) +AC_LANG_CONFTEST([Does cpp redefine unix ?]) +if test `${RAWCPP} < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + AC_MSG_RESULT([no]) +else + if test `${RAWCPP} -undef < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + RAWCPPFLAGS=-undef + AC_MSG_RESULT([yes]) + # under Cygwin unix is still defined even with -undef + elif test `${RAWCPP} -undef -ansi < conftest.$ac_ext | grep -c 'unix'` -eq 1 ; then + RAWCPPFLAGS="-undef -ansi" + AC_MSG_RESULT([yes, with -ansi]) + else + AC_MSG_ERROR([${RAWCPP} defines unix with or without -undef. I don't know what to do.]) + fi +fi +rm -f conftest.$ac_ext + +AC_MSG_CHECKING([if $RAWCPP requires -traditional]) +AC_LANG_CONFTEST([Does cpp preserve "whitespace"?]) +if test `${RAWCPP} < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then + AC_MSG_RESULT([no]) +else + if test `${RAWCPP} -traditional < conftest.$ac_ext | grep -c 'preserve \"'` -eq 1 ; then + RAWCPPFLAGS="${RAWCPPFLAGS} -traditional" + AC_MSG_RESULT([yes]) + else + AC_MSG_ERROR([${RAWCPP} does not preserve whitespace with or without -traditional. I don't know what to do.]) + fi +fi +rm -f conftest.$ac_ext +AC_SUBST(RAWCPPFLAGS) +]) # XORG_PROG_RAWCPP + +# XORG_MANPAGE_SECTIONS() +# ----------------------- +# Minimum version: 1.0.0 +# +# Determine which sections man pages go in for the different man page types +# on this OS - replaces *ManSuffix settings in old Imake *.cf per-os files. +# Not sure if there's any better way than just hardcoding by OS name. +# Override default settings by setting environment variables + +AC_DEFUN([XORG_MANPAGE_SECTIONS],[ +AC_REQUIRE([AC_CANONICAL_HOST]) + +if test x$APP_MAN_SUFFIX = x ; then + APP_MAN_SUFFIX=1 +fi +if test x$APP_MAN_DIR = x ; then + APP_MAN_DIR='$(mandir)/man$(APP_MAN_SUFFIX)' +fi + +if test x$LIB_MAN_SUFFIX = x ; then + LIB_MAN_SUFFIX=3 +fi +if test x$LIB_MAN_DIR = x ; then + LIB_MAN_DIR='$(mandir)/man$(LIB_MAN_SUFFIX)' +fi + +if test x$FILE_MAN_SUFFIX = x ; then + case $host_os in + solaris*) FILE_MAN_SUFFIX=4 ;; + *) FILE_MAN_SUFFIX=5 ;; + esac +fi +if test x$FILE_MAN_DIR = x ; then + FILE_MAN_DIR='$(mandir)/man$(FILE_MAN_SUFFIX)' +fi + +if test x$MISC_MAN_SUFFIX = x ; then + case $host_os in + solaris*) MISC_MAN_SUFFIX=5 ;; + *) MISC_MAN_SUFFIX=7 ;; + esac +fi +if test x$MISC_MAN_DIR = x ; then + MISC_MAN_DIR='$(mandir)/man$(MISC_MAN_SUFFIX)' +fi + +if test x$DRIVER_MAN_SUFFIX = x ; then + case $host_os in + solaris*) DRIVER_MAN_SUFFIX=7 ;; + *) DRIVER_MAN_SUFFIX=4 ;; + esac +fi +if test x$DRIVER_MAN_DIR = x ; then + DRIVER_MAN_DIR='$(mandir)/man$(DRIVER_MAN_SUFFIX)' +fi + +if test x$ADMIN_MAN_SUFFIX = x ; then + case $host_os in + solaris*) ADMIN_MAN_SUFFIX=1m ;; + *) ADMIN_MAN_SUFFIX=8 ;; + esac +fi +if test x$ADMIN_MAN_DIR = x ; then + ADMIN_MAN_DIR='$(mandir)/man$(ADMIN_MAN_SUFFIX)' +fi + + +AC_SUBST([APP_MAN_SUFFIX]) +AC_SUBST([LIB_MAN_SUFFIX]) +AC_SUBST([FILE_MAN_SUFFIX]) +AC_SUBST([MISC_MAN_SUFFIX]) +AC_SUBST([DRIVER_MAN_SUFFIX]) +AC_SUBST([ADMIN_MAN_SUFFIX]) +AC_SUBST([APP_MAN_DIR]) +AC_SUBST([LIB_MAN_DIR]) +AC_SUBST([FILE_MAN_DIR]) +AC_SUBST([MISC_MAN_DIR]) +AC_SUBST([DRIVER_MAN_DIR]) +AC_SUBST([ADMIN_MAN_DIR]) +]) # XORG_MANPAGE_SECTIONS + +# XORG_CHECK_LINUXDOC +# ------------------- +# Minimum version: 1.0.0 +# +# Defines the variable MAKE_TEXT if the necessary tools and +# files are found. $(MAKE_TEXT) blah.sgml will then produce blah.txt. +# Whether or not the necessary tools and files are found can be checked +# with the AM_CONDITIONAL "BUILD_LINUXDOC" +AC_DEFUN([XORG_CHECK_LINUXDOC],[ +if test x$XORG_SGML_PATH = x ; then + XORG_SGML_PATH=$prefix/share/sgml +fi +HAVE_DEFS_ENT= + +if test x"$cross_compiling" = x"yes" ; then + HAVE_DEFS_ENT=no +else + AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) +fi + +AC_PATH_PROG(LINUXDOC, linuxdoc) +AC_PATH_PROG(PS2PDF, ps2pdf) + +AC_MSG_CHECKING([Whether to build documentation]) + +if test x$HAVE_DEFS_ENT != x && test x$LINUXDOC != x ; then + BUILDDOC=yes +else + BUILDDOC=no +fi + +AM_CONDITIONAL(BUILD_LINUXDOC, [test x$BUILDDOC = xyes]) + +AC_MSG_RESULT([$BUILDDOC]) + +AC_MSG_CHECKING([Whether to build pdf documentation]) + +if test x$PS2PDF != x && test x$BUILD_PDFDOC != xno; then + BUILDPDFDOC=yes +else + BUILDPDFDOC=no +fi + +AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) + +AC_MSG_RESULT([$BUILDPDFDOC]) + +MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH GROFF_NO_SGR=y $LINUXDOC -B txt" +MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B latex --papersize=letter --output=ps" +MAKE_PDF="$PS2PDF" +MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $LINUXDOC -B html --split=0" + +AC_SUBST(MAKE_TEXT) +AC_SUBST(MAKE_PS) +AC_SUBST(MAKE_PDF) +AC_SUBST(MAKE_HTML) +]) # XORG_CHECK_LINUXDOC + +# XORG_CHECK_DOCBOOK +# ------------------- +# Minimum version: 1.0.0 +# +# Checks for the ability to build output formats from SGML DocBook source. +# For XXX in {TXT, PDF, PS, HTML}, the AM_CONDITIONAL "BUILD_XXXDOC" +# indicates whether the necessary tools and files are found and, if set, +# $(MAKE_XXX) blah.sgml will produce blah.xxx. +AC_DEFUN([XORG_CHECK_DOCBOOK],[ +if test x$XORG_SGML_PATH = x ; then + XORG_SGML_PATH=$prefix/share/sgml +fi +HAVE_DEFS_ENT= +BUILDTXTDOC=no +BUILDPDFDOC=no +BUILDPSDOC=no +BUILDHTMLDOC=no + +AC_CHECK_FILE([$XORG_SGML_PATH/X11/defs.ent], [HAVE_DEFS_ENT=yes]) + +AC_PATH_PROG(DOCBOOKPS, docbook2ps) +AC_PATH_PROG(DOCBOOKPDF, docbook2pdf) +AC_PATH_PROG(DOCBOOKHTML, docbook2html) +AC_PATH_PROG(DOCBOOKTXT, docbook2txt) + +AC_MSG_CHECKING([Whether to build text documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKTXT != x && + test x$BUILD_TXTDOC != xno; then + BUILDTXTDOC=yes +fi +AM_CONDITIONAL(BUILD_TXTDOC, [test x$BUILDTXTDOC = xyes]) +AC_MSG_RESULT([$BUILDTXTDOC]) + +AC_MSG_CHECKING([Whether to build PDF documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPDF != x && + test x$BUILD_PDFDOC != xno; then + BUILDPDFDOC=yes +fi +AM_CONDITIONAL(BUILD_PDFDOC, [test x$BUILDPDFDOC = xyes]) +AC_MSG_RESULT([$BUILDPDFDOC]) + +AC_MSG_CHECKING([Whether to build PostScript documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKPS != x && + test x$BUILD_PSDOC != xno; then + BUILDPSDOC=yes +fi +AM_CONDITIONAL(BUILD_PSDOC, [test x$BUILDPSDOC = xyes]) +AC_MSG_RESULT([$BUILDPSDOC]) + +AC_MSG_CHECKING([Whether to build HTML documentation]) +if test x$HAVE_DEFS_ENT != x && test x$DOCBOOKHTML != x && + test x$BUILD_HTMLDOC != xno; then + BUILDHTMLDOC=yes +fi +AM_CONDITIONAL(BUILD_HTMLDOC, [test x$BUILDHTMLDOC = xyes]) +AC_MSG_RESULT([$BUILDHTMLDOC]) + +MAKE_TEXT="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKTXT" +MAKE_PS="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPS" +MAKE_PDF="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKPDF" +MAKE_HTML="SGML_SEARCH_PATH=$XORG_SGML_PATH $DOCBOOKHTML" + +AC_SUBST(MAKE_TEXT) +AC_SUBST(MAKE_PS) +AC_SUBST(MAKE_PDF) +AC_SUBST(MAKE_HTML) +]) # XORG_CHECK_DOCBOOK + +# XORG_CHECK_MALLOC_ZERO +# ---------------------- +# Minimum version: 1.0.0 +# +# Defines {MALLOC,XMALLOC,XTMALLOC}_ZERO_CFLAGS appropriately if +# malloc(0) returns NULL. Packages should add one of these cflags to +# their AM_CFLAGS (or other appropriate *_CFLAGS) to use them. +AC_DEFUN([XORG_CHECK_MALLOC_ZERO],[ +AC_ARG_ENABLE(malloc0returnsnull, + AS_HELP_STRING([--enable-malloc0returnsnull], + [malloc(0) returns NULL (default: auto)]), + [MALLOC_ZERO_RETURNS_NULL=$enableval], + [MALLOC_ZERO_RETURNS_NULL=auto]) + +AC_MSG_CHECKING([whether malloc(0) returns NULL]) +if test "x$MALLOC_ZERO_RETURNS_NULL" = xauto; then + AC_RUN_IFELSE([ +char *malloc(); +char *realloc(); +char *calloc(); +main() { + char *m0, *r0, *c0, *p; + m0 = malloc(0); + p = malloc(10); + r0 = realloc(p,0); + c0 = calloc(0); + exit(m0 == 0 || r0 == 0 || c0 == 0 ? 0 : 1); +}], + [MALLOC_ZERO_RETURNS_NULL=yes], + [MALLOC_ZERO_RETURNS_NULL=no]) +fi +AC_MSG_RESULT([$MALLOC_ZERO_RETURNS_NULL]) + +if test "x$MALLOC_ZERO_RETURNS_NULL" = xyes; then + MALLOC_ZERO_CFLAGS="-DMALLOC_0_RETURNS_NULL" + XMALLOC_ZERO_CFLAGS=$MALLOC_ZERO_CFLAGS + XTMALLOC_ZERO_CFLAGS="$MALLOC_ZERO_CFLAGS -DXTMALLOC_BC" +else + MALLOC_ZERO_CFLAGS="" + XMALLOC_ZERO_CFLAGS="" + XTMALLOC_ZERO_CFLAGS="" +fi + +AC_SUBST([MALLOC_ZERO_CFLAGS]) +AC_SUBST([XMALLOC_ZERO_CFLAGS]) +AC_SUBST([XTMALLOC_ZERO_CFLAGS]) +]) # XORG_CHECK_MALLOC_ZERO + +# XORG_WITH_LINT() +# ---------------- +# Minimum version: 1.1.0 +# +# Sets up flags for source checkers such as lint and sparse if --with-lint +# is specified. (Use --with-lint=sparse for sparse.) +# Sets $LINT to name of source checker passed with --with-lint (default: lint) +# Sets $LINT_FLAGS to flags to pass to source checker +# Sets LINT automake conditional if enabled (default: disabled) +# +AC_DEFUN([XORG_WITH_LINT],[ + +# Allow checking code with lint, sparse, etc. +AC_ARG_WITH(lint, [AS_HELP_STRING([--with-lint], + [Use a lint-style source code checker (default: disabled)])], + [use_lint=$withval], [use_lint=no]) +if test "x$use_lint" = "xyes" ; then + LINT="lint" +else + LINT="$use_lint" +fi +if test "x$LINT_FLAGS" = "x" -a "x$LINT" != "xno" ; then + case $LINT in + lint|*/lint) + case $host_os in + solaris*) + LINT_FLAGS="-u -b -h -erroff=E_INDISTING_FROM_TRUNC2" + ;; + esac + ;; + esac +fi + +AC_SUBST(LINT) +AC_SUBST(LINT_FLAGS) +AM_CONDITIONAL(LINT, [test x$LINT != xno]) + +]) # XORG_WITH_LINT + +# XORG_LINT_LIBRARY(LIBNAME) +# -------------------------- +# Minimum version: 1.1.0 +# +# Sets up flags for building lint libraries for checking programs that call +# functions in the library. +# Disabled by default, enable with --enable-lint-library +# Sets: +# @LINTLIB@ - name of lint library file to make +# MAKE_LINT_LIB - automake conditional +# + +AC_DEFUN([XORG_LINT_LIBRARY],[ +AC_REQUIRE([XORG_WITH_LINT]) +# Build lint "library" for more indepth checks of programs calling this library +AC_ARG_ENABLE(lint-library, [AS_HELP_STRING([--enable-lint-library], + [Create lint library (default: disabled)])], + [make_lint_lib=$enableval], [make_lint_lib=no]) +if test "x$make_lint_lib" != "xno" ; then + if test "x$LINT" = "xno" ; then + AC_MSG_ERROR([Cannot make lint library without --with-lint]) + fi + if test "x$make_lint_lib" = "xyes" ; then + LINTLIB=llib-l$1.ln + else + LINTLIB=$make_lint_lib + fi +fi +AC_SUBST(LINTLIB) +AM_CONDITIONAL(MAKE_LINT_LIB, [test x$make_lint_lib != xno]) + +]) # XORG_LINT_LIBRARY + +# XORG_CWARNFLAGS +# --------------- +# Minimum version: 1.2.0 +# +# Defines CWARNFLAGS to enable C compiler warnings. +# +AC_DEFUN([XORG_CWARNFLAGS], [ +AC_REQUIRE([AC_PROG_CC]) +if test "x$GCC" = xyes ; then + CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ +-Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ +-Wbad-function-cast" + case `$CC -dumpversion` in + 3.4.* | 4.*) + CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement" + ;; + esac +else + AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + if test "x$SUNCC" = "xyes"; then + CWARNFLAGS="-v" + fi +fi +AC_SUBST(CWARNFLAGS) +m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) +]) # XORG_CWARNFLAGS + +# XORG_STRICT_OPTION +# ----------------------- +# Minimum version: 1.3.0 +# +# Add configure option to enable strict compilation +AC_DEFUN([XORG_STRICT_OPTION], [ +AC_REQUIRE([AC_PROG_CC]) +AC_REQUIRE([AC_PROG_CC_C99]) +AC_REQUIRE([XORG_CWARNFLAGS]) + +AC_ARG_ENABLE(strict-compilation, + AS_HELP_STRING([--enable-strict-compilation], + [Enable all warnings from compiler and make them errors (default: disabled)]), + [STRICT_COMPILE=$enableval], [STRICT_COMPILE=no]) +if test "x$STRICT_COMPILE" = "xyes"; then + AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + AC_CHECK_DECL([__INTEL_COMPILER], [INTELCC="yes"], [INTELCC="no"]) + if test "x$GCC" = xyes ; then + STRICT_CFLAGS="-pedantic -Werror" + elif test "x$SUNCC" = "xyes"; then + STRICT_CFLAGS="-errwarn" + elif test "x$INTELCC" = "xyes"; then + STRICT_CFLAGS="-Werror" + fi +fi +CWARNFLAGS="$CWARNFLAGS $STRICT_CFLAGS" +AC_SUBST([CWARNFLAGS]) +]) # XORG_STRICT_OPTION + +# XORG_DEFAULT_OPTIONS +# -------------------- +# Minimum version: 1.3.0 +# +# Defines default options for X.Org modules. +# +AC_DEFUN([XORG_DEFAULT_OPTIONS], [ +XORG_CWARNFLAGS +XORG_STRICT_OPTION +XORG_RELEASE_VERSION +XORG_CHANGELOG +XORG_MANPAGE_SECTIONS +]) # XORG_DEFAULT_OPTIONS +dnl Copyright 2005 Red Hat, Inc +dnl +dnl Permission to use, copy, modify, distribute, and sell this software and its +dnl documentation for any purpose is hereby granted without fee, provided that +dnl the above copyright notice appear in all copies and that both that +dnl copyright notice and this permission notice appear in supporting +dnl documentation. +dnl +dnl The above copyright notice and this permission notice shall be included +dnl in all copies or substantial portions of the Software. +dnl +dnl THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS +dnl OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +dnl MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. +dnl IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR +dnl OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, +dnl ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +dnl OTHER DEALINGS IN THE SOFTWARE. +dnl +dnl Except as contained in this notice, the name of the copyright holders shall +dnl not be used in advertising or otherwise to promote the sale, use or +dnl other dealings in this Software without prior written authorization +dnl from the copyright holders. +dnl + +# XORG_RELEASE_VERSION +# -------------------- +# Adds --with/without-release-string and changes the PACKAGE and +# PACKAGE_TARNAME to use "$PACKAGE{_TARNAME}-$RELEASE_VERSION". If +# no option is given, PACKAGE and PACKAGE_TARNAME are unchanged. Also +# defines PACKAGE_VERSION_{MAJOR,MINOR,PATCHLEVEL} for modules to use. + +AC_DEFUN([XORG_RELEASE_VERSION],[ + AC_ARG_WITH(release-version, + AS_HELP_STRING([--with-release-version=STRING], + [Use release version string in package name]), + [RELEASE_VERSION="$withval"], + [RELEASE_VERSION=""]) + if test "x$RELEASE_VERSION" != "x"; then + PACKAGE="$PACKAGE-$RELEASE_VERSION" + PACKAGE_TARNAME="$PACKAGE_TARNAME-$RELEASE_VERSION" + AC_MSG_NOTICE([Building with package name set to $PACKAGE]) + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MAJOR], + [`echo $PACKAGE_VERSION | cut -d . -f 1`], + [Major version of this package]) + PVM=`echo $PACKAGE_VERSION | cut -d . -f 2 | cut -d - -f 1` + if test "x$PVM" = "x"; then + PVM="0" + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_MINOR], + [$PVM], + [Minor version of this package]) + PVP=`echo $PACKAGE_VERSION | cut -d . -f 3 | cut -d - -f 1` + if test "x$PVP" = "x"; then + PVP="0" + fi + AC_DEFINE_UNQUOTED([PACKAGE_VERSION_PATCHLEVEL], + [$PVP], + [Patch version of this package]) +]) + +# XORG_CHANGELOG() +# ---------------- +# Minimum version: 1.2.0 +# +# Defines the variable CHANGELOG_CMD as the command to generate +# ChangeLog from git. +# +# Arrange that distcleancheck ignores ChangeLog left over by distclean. +# +AC_DEFUN([XORG_CHANGELOG], [ +CHANGELOG_CMD="(GIT_DIR=\$(top_srcdir)/.git git log > .changelog.tmp && \ +mv .changelog.tmp ChangeLog) || (rm -f .changelog.tmp; touch ChangeLog; \ +echo 'git directory not found: installing possibly empty changelog.' >&2)" +AC_SUBST([CHANGELOG_CMD]) +AC_SUBST([distcleancheck_listfiles], ['find . -type f ! -name ChangeLog -print']) +]) # XORG_CHANGELOG + diff --git a/xkbcomp/configure b/xkbcomp/configure index 5c61e6048..6395a7f06 100644 --- a/xkbcomp/configure +++ b/xkbcomp/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for xkbcomp 1.1.0. +# Generated by GNU Autoconf 2.63 for xkbcomp 1.1.1. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -596,8 +596,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='xkbcomp' PACKAGE_TARNAME='xkbcomp' -PACKAGE_VERSION='1.1.0' -PACKAGE_STRING='xkbcomp 1.1.0' +PACKAGE_VERSION='1.1.1' +PACKAGE_STRING='xkbcomp 1.1.1' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' # Factoring default headers for most tests. @@ -666,6 +666,8 @@ XKBCONFIGROOT XKBCOMP_LIBS XKBCOMP_CFLAGS PKG_CONFIG +AM_BACKSLASH +AM_DEFAULT_VERBOSITY CWARNFLAGS EGREP GREP @@ -756,6 +758,7 @@ ac_user_opts=' enable_option_checking enable_maintainer_mode enable_dependency_tracking +enable_silent_rules with_xkb_config_root with_release_version ' @@ -1325,7 +1328,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xkbcomp 1.1.0 to adapt to many kinds of systems. +\`configure' configures xkbcomp 1.1.1 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1395,7 +1398,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xkbcomp 1.1.0:";; + short | recursive ) echo "Configuration of xkbcomp 1.1.1:";; esac cat <<\_ACEOF @@ -1407,6 +1410,8 @@ Optional Features: (and sometimes confusing) to the casual installer --disable-dependency-tracking speeds up one-time build --enable-dependency-tracking do not reject slow dependency extractors + --enable-silent-rules less verbose build output (undo: `make V=1') + --disable-silent-rules verbose build output (undo: `make V=0') Optional Packages: --with-PACKAGE[=ARG] use PACKAGE [ARG=yes] @@ -1503,7 +1508,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xkbcomp configure 1.1.0 +xkbcomp configure 1.1.1 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1517,7 +1522,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xkbcomp $as_me 1.1.0, which was +It was created by xkbcomp $as_me 1.1.1, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2366,7 +2371,7 @@ fi # Define the identity of the package. PACKAGE='xkbcomp' - VERSION='1.1.0' + VERSION='1.1.1' cat >>confdefs.h <<_ACEOF @@ -2433,26 +2438,14 @@ fi # Require xorg-macros: XORG_CWARNFLAGS, XORG_CHANGELOG - XORG_MACROS_needed_version=1.2 - XORG_MACROS_needed_major=`echo $XORG_MACROS_needed_version | sed 's/\..*$//'` - XORG_MACROS_needed_minor=`echo $XORG_MACROS_needed_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'` - { $as_echo "$as_me:$LINENO: checking if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}" >&5 -$as_echo_n "checking if xorg-macros used to generate configure is at least ${XORG_MACROS_needed_major}.${XORG_MACROS_needed_minor}... " >&6; } - XORG_MACROS_version=1.2.1 - XORG_MACROS_major=`echo $XORG_MACROS_version | sed 's/\..*$//'` - XORG_MACROS_minor=`echo $XORG_MACROS_version | sed -e 's/^[0-9]*\.//' -e 's/\..*$//'` - if test $XORG_MACROS_major -ne $XORG_MACROS_needed_major ; then - { { $as_echo "$as_me:$LINENO: error: configure built with incompatible version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.x" >&5 -$as_echo "$as_me: error: configure built with incompatible version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.x" >&2;} - { (exit 1); exit 1; }; } - fi - if test $XORG_MACROS_minor -lt $XORG_MACROS_needed_minor ; then - { { $as_echo "$as_me:$LINENO: error: configure built with too old of a version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.${XORG_MACROS_minor}.0 or newer" >&5 -$as_echo "$as_me: error: configure built with too old of a version of xorg-macros.m4 - requires version ${XORG_MACROS_major}.${XORG_MACROS_minor}.0 or newer" >&2;} - { (exit 1); exit 1; }; } - fi - { $as_echo "$as_me:$LINENO: result: yes, $XORG_MACROS_version" >&5 -$as_echo "yes, $XORG_MACROS_version" >&6; } + + + + + + + + ac_config_headers="$ac_config_headers config.h" @@ -4346,9 +4339,9 @@ if test "x$GCC" = xyes ; then CWARNFLAGS="-Wall -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes \ -Wmissing-declarations -Wnested-externs -fno-strict-aliasing \ -Wbad-function-cast" - case `gcc -dumpversion` in + case `$CC -dumpversion` in 3.4.* | 4.*) - CWARNFLAGS+=" -Wold-style-definition -Wdeclaration-after-statement" + CWARNFLAGS="$CWARNFLAGS -Wold-style-definition -Wdeclaration-after-statement" ;; esac else @@ -4416,6 +4409,18 @@ fi fi fi +# Check whether --enable-silent-rules was given. +if test "${enable_silent_rules+set}" = set; then + enableval=$enable_silent_rules; +fi + +case $enable_silent_rules in +yes) AM_DEFAULT_VERBOSITY=0;; +no) AM_DEFAULT_VERBOSITY=1;; +*) AM_DEFAULT_VERBOSITY=0;; +esac +AM_BACKSLASH='\' + @@ -5413,7 +5418,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xkbcomp $as_me 1.1.0, which was +This file was extended by xkbcomp $as_me 1.1.1, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -5476,7 +5481,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -xkbcomp config.status 1.1.0 +xkbcomp config.status 1.1.1 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/xkbcomp/configure.ac b/xkbcomp/configure.ac index 4d55b6b36..007e7ca30 100644 --- a/xkbcomp/configure.ac +++ b/xkbcomp/configure.ac @@ -21,7 +21,7 @@ dnl dnl Process this file with autoconf to create configure. AC_PREREQ([2.57]) -AC_INIT(xkbcomp,[1.1.0], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xkbcomp) +AC_INIT(xkbcomp,[1.1.1], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],xkbcomp) AM_INIT_AUTOMAKE([dist-bzip2]) AM_MAINTAINER_MODE diff --git a/xkbcomp/xkbcomp.c b/xkbcomp/xkbcomp.c index 8ceea29f9..922bb42b6 100644 --- a/xkbcomp/xkbcomp.c +++ b/xkbcomp/xkbcomp.c @@ -1,1216 +1,1224 @@ -/************************************************************ - Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc. - - Permission to use, copy, modify, and distribute this - software and its documentation for any purpose and without - fee is hereby granted, provided that the above copyright - notice appear in all copies and that both that copyright - notice and this permission notice appear in supporting - documentation, and that the name of Silicon Graphics not be - used in advertising or publicity pertaining to distribution - of the software without specific prior written permission. - Silicon Graphics makes no representation about the suitability - of this software for any purpose. It is provided "as is" - without any express or implied warranty. - - SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS - SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY - AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON - GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL - DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE - OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH - THE USE OR PERFORMANCE OF THIS SOFTWARE. - - ********************************************************/ - -#include <stdio.h> -#include <ctype.h> -#include <X11/keysym.h> - -/* for symlink attack security fix -- Branden Robinson */ -#include <sys/stat.h> -#include <sys/types.h> -#include <unistd.h> -/* end BR */ - -#if defined(sgi) -#include <malloc.h> -#endif - -#define DEBUG_VAR debugFlags -#include "xkbcomp.h" -#include <stdlib.h> -#include "xkbpath.h" -#include "parseutils.h" -#include "misc.h" -#include "tokens.h" -#include <X11/extensions/XKBgeom.h> - -#ifdef __UNIXOS2__ -#define chdir _chdir2 -#endif - -#ifdef WIN32 -#define S_IRGRP 0 -#define S_IWGRP 0 -#define S_IROTH 0 -#define S_IWOTH 0 -#endif - -#define lowbit(x) ((x) & (-(x))) - -/***====================================================================***/ - -#define WANT_DEFAULT 0 -#define WANT_XKM_FILE 1 -#define WANT_C_HDR 2 -#define WANT_XKB_FILE 3 -#define WANT_X_SERVER 4 -#define WANT_LISTING 5 - -#define INPUT_UNKNOWN 0 -#define INPUT_XKB 1 -#define INPUT_XKM 2 - -unsigned int debugFlags; - -static const char *fileTypeExt[] = { - "XXX", - "xkm", - "h", - "xkb", - "dir" -}; - -static unsigned inputFormat, outputFormat; -char *rootDir; -static char *inputFile; -static char *inputMap; -static char *outputFile; -static char *inDpyName; -static char *outDpyName; -static Display *inDpy; -static Display *outDpy; -static Bool showImplicit = False; -static Bool synch = False; -static Bool computeDflts = False; -static Bool xkblist = False; -unsigned warningLevel = 5; -unsigned verboseLevel = 0; -unsigned dirsToStrip = 0; -unsigned optionalParts = 0; -static char *preErrorMsg = NULL; -static char *postErrorMsg = NULL; -static char *errorPrefix = NULL; -static unsigned int device_id = XkbUseCoreKbd; - -/***====================================================================***/ - -#define M(m) fprintf(stderr,(m)) -#define M1(m,a) fprintf(stderr,(m),(a)) - -static void -Usage(int argc, char *argv[]) -{ - if (!xkblist) - M1("Usage: %s [options] input-file [ output-file ]\n", argv[0]); - else - M1("Usage: %s [options] file[(map)] ...\n", argv[0]); - M("Legal options:\n"); - M("-?,-help Print this message\n"); - if (!xkblist) - { - M("-a Show all actions\n"); - M("-C Create a C header file\n"); - } -#ifdef DEBUG - M("-d [flags] Report debugging information\n"); -#endif - M("-em1 <msg> Print <msg> before printing first error message\n"); - M("-emp <msg> Print <msg> at the start of each message line\n"); - M("-eml <msg> If there were any errors, print <msg> before exiting\n"); - if (!xkblist) - { - M("-dflts Compute defaults for missing parts\n"); - M("-I[<dir>] Specifies a top level directory for include\n"); - M(" directives. Multiple directories are legal.\n"); - M("-l [flags] List matching maps in the specified files\n"); - M(" f: list fully specified names\n"); - M(" h: also list hidden maps\n"); - M(" l: long listing (show flags)\n"); - M(" p: also list partial maps\n"); - M(" R: recursively list subdirectories\n"); - M(" default is all options off\n"); - } - M("-i <deviceid> Specifies device ID (not name) to compile for\n"); - M("-m[ap] <map> Specifies map to compile\n"); - M("-o <file> Specifies output file name\n"); - if (!xkblist) - { - M("-opt[ional] <parts> Specifies optional components of keymap\n"); - M(" Errors in optional parts are not fatal\n"); - M(" <parts> can be any combination of:\n"); - M(" c: compat map g: geometry\n"); - M(" k: keycodes s: symbols\n"); - M(" t: types\n"); - } - if (xkblist) - { - M("-p <count> Specifies the number of slashes to be stripped\n"); - M(" from the front of the map name on output\n"); - } - M("-R[<DIR>] Specifies the root directory for\n"); - M(" relative path names\n"); - M("-synch Force synchronization\n"); - if (xkblist) - { - M("-v [<flags>] Set level of detail for listing.\n"); - M(" flags are as for the -l option\n"); - } - M("-w [<lvl>] Set warning level (0=none, 10=all)\n"); - if (!xkblist) - { - M("-xkb Create an XKB source (.xkb) file\n"); - M("-xkm Create a compiled key map (.xkm) file\n"); - } - return; -} - -/***====================================================================***/ - -static void -setVerboseFlags(char *str) -{ - for (; *str; str++) - { - switch (*str) - { - case 'f': - verboseLevel |= WantFullNames; - break; - case 'h': - verboseLevel |= WantHiddenMaps; - break; - case 'l': - verboseLevel |= WantLongListing; - break; - case 'p': - verboseLevel |= WantPartialMaps; - break; - case 'R': - verboseLevel |= ListRecursive; - break; - default: - if (warningLevel > 4) - { - WARN1("Unknown verbose option \"%c\"\n", (unsigned int) *str); - ACTION("Ignored\n"); - } - break; - } - } - return; -} - -static Bool -parseArgs(int argc, char *argv[]) -{ - register int i, tmp; - - i = strlen(argv[0]); - tmp = strlen("xkblist"); - if ((i >= tmp) && (strcmp(&argv[0][i - tmp], "xkblist") == 0)) - { - xkblist = True; - } - for (i = 1; i < argc; i++) - { - int itmp; - if ((argv[i][0] != '-') || (uStringEqual(argv[i], "-"))) - { - if (!xkblist) - { - if (inputFile == NULL) - inputFile = argv[i]; - else if (outputFile == NULL) - outputFile = argv[i]; - else if (warningLevel > 0) - { - WARN("Too many file names on command line\n"); - ACTION3 - ("Compiling %s, writing to %s, ignoring %s\n", - inputFile, outputFile, argv[i]); - } - } - else if (!AddMatchingFiles(argv[i])) - return False; - } - else if ((strcmp(argv[i], "-?") == 0) - || (strcmp(argv[i], "-help") == 0)) - { - Usage(argc, argv); - exit(0); - } - else if ((strcmp(argv[i], "-a") == 0) && (!xkblist)) - { - showImplicit = True; - } - else if ((strcmp(argv[i], "-C") == 0) && (!xkblist)) - { - if ((outputFormat != WANT_DEFAULT) - && (outputFormat != WANT_C_HDR)) - { - if (warningLevel > 0) - { - WARN("Multiple output file formats specified\n"); - ACTION1("\"%s\" flag ignored\n", argv[i]); - } - } - else - outputFormat = WANT_C_HDR; - } -#ifdef DEBUG - else if (strcmp(argv[i], "-d") == 0) - { - if ((i >= (argc - 1)) || (!isdigit(argv[i + 1][0]))) - { - debugFlags = 1; - } - else - { - if (sscanf(argv[++i], "%i", &itmp) == 1) - debugFlags = itmp; - } - INFO1("Setting debug flags to %d\n", debugFlags); - } -#endif - else if ((strcmp(argv[i], "-dflts") == 0) && (!xkblist)) - { - computeDflts = True; - } - else if (strcmp(argv[i], "-em1") == 0) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No pre-error message specified\n"); - ACTION("Trailing \"-em1\" option ignored\n"); - } - } - else if (preErrorMsg != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple pre-error messsages specified\n"); - ACTION2("Compiling %s, ignoring %s\n", - preErrorMsg, argv[i]); - } - } - else - preErrorMsg = argv[i]; - } - else if (strcmp(argv[i], "-emp") == 0) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No error prefix specified\n"); - ACTION("Trailing \"-emp\" option ignored\n"); - } - } - else if (errorPrefix != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple error prefixes specified\n"); - ACTION2("Compiling %s, ignoring %s\n", - errorPrefix, argv[i]); - } - } - else - errorPrefix = argv[i]; - } - else if (strcmp(argv[i], "-eml") == 0) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No post-error message specified\n"); - ACTION("Trailing \"-eml\" option ignored\n"); - } - } - else if (postErrorMsg != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple post-error messages specified\n"); - ACTION2("Compiling %s, ignoring %s\n", - postErrorMsg, argv[i]); - } - } - else - postErrorMsg = argv[i]; - } - else if ((strncmp(argv[i], "-I", 2) == 0) && (!xkblist)) - { - if (!XkbAddDirectoryToPath(&argv[i][2])) - { - ACTION("Exiting\n"); - exit(1); - } - } - else if ((strncmp(argv[i], "-i", 2) == 0) && (!xkblist)) - { - if (++i >= argc) - { - if (warningLevel > 0) - WARN("No device ID specified\n"); - } - device_id = atoi(argv[i]); - } - else if ((strncmp(argv[i], "-l", 2) == 0) && (!xkblist)) - { - if (outputFormat != WANT_DEFAULT) - { - if (warningLevel > 0) - { - WARN("Multiple output file formats specified\n"); - ACTION1("\"%s\" flag ignored\n", argv[i]); - } - } - else - { - if (argv[i][2] != '\0') - setVerboseFlags(&argv[i][2]); - xkblist = True; - if ((inputFile) && (!AddMatchingFiles(inputFile))) - return False; - else - inputFile = NULL; - if ((outputFile) && (!AddMatchingFiles(outputFile))) - return False; - else - outputFile = NULL; - } - } - else if ((strcmp(argv[i], "-m") == 0) - || (strcmp(argv[i], "-map") == 0)) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No map name specified\n"); - ACTION1("Trailing \"%s\" option ignored\n", argv[i - 1]); - } - } - else if (xkblist) - { - if (!AddMapOnly(argv[i])) - return False; - } - else if (inputMap != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple map names specified\n"); - ACTION2("Compiling %s, ignoring %s\n", inputMap, argv[i]); - } - } - else - inputMap = argv[i]; - } - else if ((strcmp(argv[i], "-merge") == 0) && (!xkblist)) - { - /* Ignored */ - } - else if (strcmp(argv[i], "-o") == 0) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No output file specified\n"); - ACTION("Trailing \"-o\" option ignored\n"); - } - } - else if (outputFile != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple output files specified\n"); - ACTION2("Compiling %s, ignoring %s\n", outputFile, - argv[i]); - } - } - else - outputFile = argv[i]; - } - else if (((strcmp(argv[i], "-opt") == 0) - || (strcmp(argv[i], "optional") == 0)) && (!xkblist)) - { - if (++i >= argc) - { - if (warningLevel > 0) - { - WARN("No optional components specified\n"); - ACTION1("Trailing \"%s\" option ignored\n", argv[i - 1]); - } - } - else - { - char *tmp2; - for (tmp2 = argv[i]; (*tmp2 != '\0'); tmp2++) - { - switch (*tmp2) - { - case 'c': - case 'C': - optionalParts |= XkmCompatMapMask; - break; - case 'g': - case 'G': - optionalParts |= XkmGeometryMask; - break; - case 'k': - case 'K': - optionalParts |= XkmKeyNamesMask; - break; - case 's': - case 'S': - optionalParts |= XkmSymbolsMask; - break; - case 't': - case 'T': - optionalParts |= XkmTypesMask; - break; - default: - if (warningLevel > 0) - { - WARN1 - ("Illegal component for %s option\n", - argv[i - 1]); - ACTION1 - ("Ignoring unknown specifier \"%c\"\n", - (unsigned int) *tmp2); - } - break; - } - } - } - } - else if (strncmp(argv[i], "-p", 2) == 0) - { - if (isdigit(argv[i][2])) - { - if (sscanf(&argv[i][2], "%i", &itmp) == 1) - dirsToStrip = itmp; - } - else if ((i < (argc - 1)) && (isdigit(argv[i + 1][0]))) - { - if (sscanf(argv[++i], "%i", &itmp) == 1) - dirsToStrip = itmp; - } - else - { - dirsToStrip = 0; - } - if (warningLevel > 5) - INFO1("Setting path count to %d\n", dirsToStrip); - } - else if (strncmp(argv[i], "-R", 2) == 0) - { - if (argv[i][2] == '\0') - { - if (warningLevel > 0) - { - WARN("No root directory specified\n"); - ACTION("Ignoring -R option\n"); - } - } - else if (rootDir != NULL) - { - if (warningLevel > 0) - { - WARN("Multiple root directories specified\n"); - ACTION2("Using %s, ignoring %s\n", rootDir, argv[i]); - } - } - else - { - rootDir = &argv[i][2]; - if (warningLevel > 8) - { - WARN1("Changing root directory to \"%s\"\n", rootDir); - } - XkbAddDirectoryToPath(rootDir); - if (!XkbAddDirectoryToPath(rootDir) && (warningLevel>0)) { - WARN1("Couldn't change directory to \"%s\"\n", rootDir); - ACTION("Root directory (-R) option ignored\n"); - rootDir = NULL; - } - } - } - else if ((strcmp(argv[i], "-synch") == 0) - || (strcmp(argv[i], "-s") == 0)) - { - synch = True; - } - else if (strncmp(argv[i], "-v", 2) == 0) - { - char *str; - if (argv[i][2] != '\0') - str = &argv[i][2]; - else if ((i < (argc - 1)) && (argv[i + 1][0] != '-')) - str = argv[++i]; - else - str = NULL; - if (str) - setVerboseFlags(str); - } - else if (strncmp(argv[i], "-w", 2) == 0) - { - if ((i >= (argc - 1)) || (!isdigit(argv[i + 1][0]))) - { - warningLevel = 0; - if (isdigit(argv[i][1])) - if (sscanf(&argv[i][1], "%i", &itmp) == 1) - warningLevel = itmp; - } - else - { - if (sscanf(argv[++i], "%i", &itmp) == 1) - warningLevel = itmp; - } - } - else if ((strcmp(argv[i], "-xkb") == 0) && (!xkblist)) - { - if ((outputFormat != WANT_DEFAULT) - && (outputFormat != WANT_XKB_FILE)) - { - if (warningLevel > 0) - { - WARN("Multiple output file formats specified\n"); - ACTION1("\"%s\" flag ignored\n", argv[i]); - } - } - else - outputFormat = WANT_XKB_FILE; - } - else if ((strcmp(argv[i], "-xkm") == 0) && (!xkblist)) - { - if ((outputFormat != WANT_DEFAULT) - && (outputFormat != WANT_XKM_FILE)) - { - if (warningLevel > 0) - { - WARN("Multiple output file formats specified\n"); - ACTION1("\"%s\" flag ignored\n", argv[i]); - } - } - else - outputFormat = WANT_XKM_FILE; - } - else - { - ERROR1("Unknown flag \"%s\" on command line\n", argv[i]); - Usage(argc, argv); - return False; - } - } - if (xkblist) - inputFormat = INPUT_XKB; - else if (inputFile == NULL) - { - ERROR("No input file specified\n"); - return False; - } - else if (uStringEqual(inputFile, "-")) - { - inputFormat = INPUT_XKB; - } -#ifndef WIN32 - else if (strchr(inputFile, ':') == NULL) - { -#else - else if ((strchr(inputFile, ':') == NULL) || (strlen(inputFile) > 2 && - isalpha(inputFile[0]) && - inputFile[1] == ':' - && strchr(inputFile + 2, - ':') == NULL)) - { -#endif - int len; - len = strlen(inputFile); - if (inputFile[len - 1] == ')') - { - char *tmp; - if ((tmp = strchr(inputFile, '(')) != NULL) - { - *tmp = '\0'; - inputFile[len - 1] = '\0'; - tmp++; - if (*tmp == '\0') - { - WARN("Empty map in filename\n"); - ACTION("Ignored\n"); - } - else if (inputMap == NULL) - { - inputMap = uStringDup(tmp); - } - else - { - WARN("Map specified in filename and with -m flag\n"); - ACTION1("map from name (\"%s\") ignored\n", tmp); - } - } - else - { - ERROR1("Illegal name \"%s\" for input file\n", inputFile); - return False; - } - } - if ((len > 4) && (strcmp(&inputFile[len - 4], ".xkm") == 0)) - { - inputFormat = INPUT_XKM; - } - else - { - FILE *file; - file = fopen(inputFile, "r"); - if (file) - { - if (XkmProbe(file)) - inputFormat = INPUT_XKM; - else - inputFormat = INPUT_XKB; - fclose(file); - } - else - { - fprintf(stderr, "Cannot open \"%s\" for reading\n", - inputFile); - return False; - } - } - } - else - { - inDpyName = inputFile; - inputFile = NULL; - inputFormat = INPUT_XKM; - } - - if (outputFormat == WANT_DEFAULT) - { - if (xkblist) - outputFormat = WANT_LISTING; - else if (inputFormat == INPUT_XKB) - outputFormat = WANT_XKM_FILE; - else - outputFormat = WANT_XKB_FILE; - } - if ((outputFormat == WANT_LISTING) && (inputFormat != INPUT_XKB)) - { - if (inputFile) - ERROR("Cannot generate a listing from a .xkm file (yet)\n"); - else - ERROR("Cannot generate a listing from an X connection (yet)\n"); - return False; - } - if (xkblist) - { - if (outputFile == NULL) - outputFile = uStringDup("-"); - else if (strchr(outputFile, ':') != NULL) - { - ERROR("Cannot write a listing to an X connection\n"); - return False; - } - } - else if ((!outputFile) && (inputFile) && uStringEqual(inputFile, "-")) - { - int len = strlen("stdin") + strlen(fileTypeExt[outputFormat]) + 2; - outputFile = uTypedCalloc(len, char); - if (outputFile == NULL) - { - WSGO("Cannot allocate space for output file name\n"); - ACTION("Exiting\n"); - exit(1); - } - sprintf(outputFile, "stdin.%s", fileTypeExt[outputFormat]); - } - else if ((outputFile == NULL) && (inputFile != NULL)) - { - int len; - char *base, *ext; - - if (inputMap == NULL) - { - base = strrchr(inputFile, '/'); - if (base == NULL) - base = inputFile; - else - base++; - } - else - base = inputMap; - - len = strlen(base) + strlen(fileTypeExt[outputFormat]) + 2; - outputFile = uTypedCalloc(len, char); - if (outputFile == NULL) - { - WSGO("Cannot allocate space for output file name\n"); - ACTION("Exiting\n"); - exit(1); - } - ext = strrchr(base, '.'); - if (ext == NULL) - sprintf(outputFile, "%s.%s", base, fileTypeExt[outputFormat]); - else - { - strcpy(outputFile, base); - strcpy(&outputFile[ext - base + 1], fileTypeExt[outputFormat]); - } - } - else if (outputFile == NULL) - { - int len; - char *ch, *name, buf[128]; - if (inDpyName[0] == ':') - snprintf(name = buf, sizeof(buf), "server%s", inDpyName); - else - name = inDpyName; - - len = strlen(name) + strlen(fileTypeExt[outputFormat]) + 2; - outputFile = uTypedCalloc(len, char); - if (outputFile == NULL) - { - WSGO("Cannot allocate space for output file name\n"); - ACTION("Exiting\n"); - exit(1); - } - strcpy(outputFile, name); - for (ch = outputFile; (*ch) != '\0'; ch++) - { - if (*ch == ':') - *ch = '-'; - else if (*ch == '.') - *ch = '_'; - } - *ch++ = '.'; - strcpy(ch, fileTypeExt[outputFormat]); - } -#ifdef WIN32 - else if (strlen(outputFile) > 2 && - isalpha(outputFile[0]) && - outputFile[1] == ':' && strchr(outputFile + 2, ':') == NULL) - { - } -#endif - else if (strchr(outputFile, ':') != NULL) - { - outDpyName = outputFile; - outputFile = NULL; - outputFormat = WANT_X_SERVER; - } - return True; -} - -static Display * -GetDisplay(char *program, char *dpyName) -{ - int mjr, mnr, error; - Display *dpy; - - mjr = XkbMajorVersion; - mnr = XkbMinorVersion; - dpy = XkbOpenDisplay(dpyName, NULL, NULL, &mjr, &mnr, &error); - if (dpy == NULL) - { - switch (error) - { - case XkbOD_BadLibraryVersion: - INFO3("%s was compiled with XKB version %d.%02d\n", - program, XkbMajorVersion, XkbMinorVersion); - ERROR2("X library supports incompatible version %d.%02d\n", - mjr, mnr); - break; - case XkbOD_ConnectionRefused: - ERROR1("Cannot open display \"%s\"\n", dpyName); - break; - case XkbOD_NonXkbServer: - ERROR1("XKB extension not present on %s\n", dpyName); - break; - case XkbOD_BadServerVersion: - INFO3("%s was compiled with XKB version %d.%02d\n", - program, XkbMajorVersion, XkbMinorVersion); - ERROR3("Server %s uses incompatible version %d.%02d\n", - dpyName, mjr, mnr); - break; - default: - WSGO1("Unknown error %d from XkbOpenDisplay\n", error); - } - } - else if (synch) - XSynchronize(dpy, True); - return dpy; -} - -/***====================================================================***/ - -extern int yydebug; - -int -main(int argc, char *argv[]) -{ - FILE *file; /* input file (or stdin) */ - XkbFile *rtrn; - XkbFile *mapToUse; - int ok; - XkbFileInfo result; - Status status; - - yyin = stdin; - uSetEntryFile(NullString); - uSetDebugFile(NullString); - uSetErrorFile(NullString); - - XkbInitIncludePath(); - if (!parseArgs(argc, argv)) - exit(1); -#ifdef DEBUG - if (debugFlags & 0x2) - yydebug = 1; -#endif - if (preErrorMsg) - uSetPreErrorMessage(preErrorMsg); - if (errorPrefix) - uSetErrorPrefix(errorPrefix); - if (postErrorMsg) - uSetPostErrorMessage(postErrorMsg); - file = NULL; - XkbInitAtoms(NULL); - XkbAddDefaultDirectoriesToPath(); - if (xkblist) - { - Bool gotSome; - gotSome = GenerateListing(outputFile); - if ((warningLevel > 7) && (!gotSome)) - return -1; - return 0; - } - if (inputFile != NULL) - { - if (uStringEqual(inputFile, "-")) - { - file = stdin; - inputFile = "stdin"; - } - else - { - file = fopen(inputFile, "r"); - } - } - else if (inDpyName != NULL) - { - inDpy = GetDisplay(argv[0], inDpyName); - if (!inDpy) - { - ACTION("Exiting\n"); - exit(1); - } - } - if (outDpyName != NULL) - { - outDpy = GetDisplay(argv[0], outDpyName); - if (!outDpy) - { - ACTION("Exiting\n"); - exit(1); - } - } - if ((inDpy == NULL) && (outDpy == NULL)) - { - int mjr, mnr; - mjr = XkbMajorVersion; - mnr = XkbMinorVersion; - if (!XkbLibraryVersion(&mjr, &mnr)) - { - INFO3("%s was compiled with XKB version %d.%02d\n", - argv[0], XkbMajorVersion, XkbMinorVersion); - ERROR2("X library supports incompatible version %d.%02d\n", - mjr, mnr); - ACTION("Exiting\n"); - exit(1); - } - } - if (file) - { - ok = True; - setScanState(inputFile, 1); - if ((inputFormat == INPUT_XKB) /* parse .xkb file */ - && (XKBParseFile(file, &rtrn) && (rtrn != NULL))) - { - fclose(file); - mapToUse = rtrn; - if (inputMap != NULL) /* map specified on cmdline? */ - { - while ((mapToUse) - && (!uStringEqual(mapToUse->name, inputMap))) - { - mapToUse = (XkbFile *) mapToUse->common.next; - } - if (!mapToUse) - { - FATAL2("No map named \"%s\" in \"%s\"\n", - inputMap, inputFile); - /* NOTREACHED */ - } - } - else if (rtrn->common.next != NULL) - { - /* look for map with XkbLC_Default flag. */ - mapToUse = rtrn; - for (; mapToUse; mapToUse = (XkbFile *) mapToUse->common.next) - { - if (mapToUse->flags & XkbLC_Default) - break; - } - if (!mapToUse) - { - mapToUse = rtrn; - if (warningLevel > 4) - { - WARN1 - ("No map specified, but \"%s\" has several\n", - inputFile); - ACTION1 - ("Using the first defined map, \"%s\"\n", - mapToUse->name); - } - } - } - bzero((char *) &result, sizeof(result)); - result.type = mapToUse->type; - if ((result.xkb = XkbAllocKeyboard()) == NULL) - { - WSGO("Cannot allocate keyboard description\n"); - /* NOTREACHED */ - } - switch (mapToUse->type) - { - case XkmSemanticsFile: - case XkmLayoutFile: - case XkmKeymapFile: - ok = CompileKeymap(mapToUse, &result, MergeReplace); - break; - case XkmKeyNamesIndex: - ok = CompileKeycodes(mapToUse, &result, MergeReplace); - break; - case XkmTypesIndex: - ok = CompileKeyTypes(mapToUse, &result, MergeReplace); - break; - case XkmSymbolsIndex: - /* if it's just symbols, invent key names */ - result.xkb->flags |= AutoKeyNames; - ok = False; - break; - case XkmCompatMapIndex: - ok = CompileCompatMap(mapToUse, &result, MergeReplace, NULL); - break; - case XkmGeometryFile: - case XkmGeometryIndex: - /* if it's just a geometry, invent key names */ - result.xkb->flags |= AutoKeyNames; - ok = CompileGeometry(mapToUse, &result, MergeReplace); - break; - default: - WSGO1("Unknown file type %d\n", mapToUse->type); - ok = False; - break; - } - } - else if (inputFormat == INPUT_XKM) /* parse xkm file */ - { - unsigned tmp; - bzero((char *) &result, sizeof(result)); - if ((result.xkb = XkbAllocKeyboard()) == NULL) - { - WSGO("Cannot allocate keyboard description\n"); - /* NOTREACHED */ - } - tmp = XkmReadFile(file, 0, XkmKeymapLegal, &result); - if (tmp == XkmKeymapLegal) - { - ERROR1("Cannot read XKM file \"%s\"\n", inputFile); - ok = False; - } - } - else - { - INFO1("Errors encountered in %s; not compiled.\n", inputFile); - ok = False; - } - } - else if (inDpy != NULL) - { - bzero((char *) &result, sizeof(result)); - result.type = XkmKeymapFile; - result.xkb = XkbGetMap(inDpy, XkbAllMapComponentsMask, device_id); - if (result.xkb == NULL) - WSGO("Cannot load keyboard description\n"); - if (XkbGetIndicatorMap(inDpy, ~0, result.xkb) != Success) - WSGO("Could not load indicator map\n"); - if (XkbGetControls(inDpy, XkbAllControlsMask, result.xkb) != Success) - WSGO("Could not load keyboard controls\n"); - if (XkbGetCompatMap(inDpy, XkbAllCompatMask, result.xkb) != Success) - WSGO("Could not load compatibility map\n"); - if (XkbGetNames(inDpy, XkbAllNamesMask, result.xkb) != Success) - WSGO("Could not load names\n"); - if ((status = XkbGetGeometry(inDpy, result.xkb)) != Success) - { - if (warningLevel > 3) - { - char buf[100]; - buf[0] = '\0'; - XGetErrorText(inDpy, status, buf, 100); - WARN1("Could not load keyboard geometry for %s\n", inDpyName); - ACTION1("%s\n", buf); - ACTION("Resulting keymap file will not describe geometry\n"); - } - } - if (computeDflts) - ok = (ComputeKbdDefaults(result.xkb) == Success); - else - ok = True; - } - else - { - fprintf(stderr, "Cannot open \"%s\" to compile\n", inputFile); - ok = 0; - } - if (ok) - { - FILE *out = stdout; - if ((inDpy != outDpy) && - (XkbChangeKbdDisplay(outDpy, &result) != Success)) - { - WSGO2("Error converting keyboard display from %s to %s\n", - inDpyName, outDpyName); - exit(1); - } - if (outputFile != NULL) - { - if (uStringEqual(outputFile, "-")) - outputFile = "stdout"; - else - { - /* - * fix to prevent symlink attack (e.g., - * ln -s /etc/passwd /var/tmp/server-0.xkm) - */ - /* - * this patch may have POSIX, Linux, or GNU libc bias - * -- Branden Robinson - */ - int outputFileFd; - int binMode = 0; - const char *openMode = "w"; - unlink(outputFile); -#ifdef O_BINARY - switch (outputFormat) - { - case WANT_XKM_FILE: - binMode = O_BINARY; - openMode = "wb"; - break; - default: - binMode = 0; - break; - } -#endif -#ifdef _MSC_VER - outputFileFd= open(outputFile, O_WRONLY|O_CREAT|O_EXCL|binMode,_S_IREAD | _S_IWRITE); -#else - outputFileFd = - open(outputFile, O_WRONLY | O_CREAT | O_EXCL, - S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH - | S_IWOTH | binMode); -#endif - if (outputFileFd < 0) - { - ERROR1 - ("Cannot open \"%s\" to write keyboard description\n", - outputFile); - ACTION("Exiting\n"); - exit(1); - } -#ifndef WIN32 - out = fdopen(outputFileFd, openMode); -#else - close(outputFileFd); - out = fopen(outputFile, "wb"); -#endif - /* end BR */ - if (out == NULL) - { - ERROR1 - ("Cannot open \"%s\" to write keyboard description\n", - outputFile); - ACTION("Exiting\n"); - exit(1); - } - } - } - switch (outputFormat) - { - case WANT_XKM_FILE: - ok = XkbWriteXKMFile(out, &result); - break; - case WANT_XKB_FILE: - ok = XkbWriteXKBFile(out, &result, showImplicit, NULL, NULL); - break; - case WANT_C_HDR: - ok = XkbWriteCFile(out, outputFile, &result); - break; - case WANT_X_SERVER: - if (!(ok = XkbWriteToServer(&result))) - { - ERROR2("%s in %s\n", _XkbErrMessages[_XkbErrCode], - _XkbErrLocation ? _XkbErrLocation : "unknown"); - ACTION1("Couldn't write keyboard description to %s\n", - outDpyName); - } - break; - default: - WSGO1("Unknown output format %d\n", outputFormat); - ACTION("No output file created\n"); - ok = False; - break; - } - if (outputFormat != WANT_X_SERVER) - { - fclose(out); - if (!ok) - { - ERROR2("%s in %s\n", _XkbErrMessages[_XkbErrCode], - _XkbErrLocation ? _XkbErrLocation : "unknown"); - ACTION1("Output file \"%s\" removed\n", outputFile); - unlink(outputFile); - } - } - } - if (inDpy) - XCloseDisplay(inDpy); - inDpy = NULL; - if (outDpy) - XCloseDisplay(outDpy); - uFinishUp(); - return (ok == 0); -} +/************************************************************
+ Copyright (c) 1994 by Silicon Graphics Computer Systems, Inc.
+
+ Permission to use, copy, modify, and distribute this
+ software and its documentation for any purpose and without
+ fee is hereby granted, provided that the above copyright
+ notice appear in all copies and that both that copyright
+ notice and this permission notice appear in supporting
+ documentation, and that the name of Silicon Graphics not be
+ used in advertising or publicity pertaining to distribution
+ of the software without specific prior written permission.
+ Silicon Graphics makes no representation about the suitability
+ of this software for any purpose. It is provided "as is"
+ without any express or implied warranty.
+
+ SILICON GRAPHICS DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS
+ SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
+ AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL SILICON
+ GRAPHICS BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL
+ DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
+ OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH
+ THE USE OR PERFORMANCE OF THIS SOFTWARE.
+
+ ********************************************************/
+
+#include <stdio.h>
+#include <ctype.h>
+#include <X11/keysym.h>
+
+/* for symlink attack security fix -- Branden Robinson */
+#include <sys/stat.h>
+#include <sys/types.h>
+#include <unistd.h>
+/* end BR */
+
+#if defined(sgi)
+#include <malloc.h>
+#endif
+
+#define DEBUG_VAR debugFlags
+#include "xkbcomp.h"
+#include <stdlib.h>
+#include "xkbpath.h"
+#include "parseutils.h"
+#include "misc.h"
+#include "tokens.h"
+#include <X11/extensions/XKBgeom.h>
+
+#ifdef __UNIXOS2__
+#define chdir _chdir2
+#endif
+
+#ifdef WIN32
+#define S_IRGRP 0
+#define S_IWGRP 0
+#define S_IROTH 0
+#define S_IWOTH 0
+#endif
+
+#define lowbit(x) ((x) & (-(x)))
+
+/***====================================================================***/
+
+#define WANT_DEFAULT 0
+#define WANT_XKM_FILE 1
+#define WANT_C_HDR 2
+#define WANT_XKB_FILE 3
+#define WANT_X_SERVER 4
+#define WANT_LISTING 5
+
+#define INPUT_UNKNOWN 0
+#define INPUT_XKB 1
+#define INPUT_XKM 2
+
+unsigned int debugFlags;
+
+static const char *fileTypeExt[] = {
+ "XXX",
+ "xkm",
+ "h",
+ "xkb",
+ "dir"
+};
+
+static unsigned inputFormat, outputFormat;
+char *rootDir;
+static char *inputFile;
+static char *inputMap;
+static char *outputFile;
+static char *inDpyName;
+static char *outDpyName;
+static Display *inDpy;
+static Display *outDpy;
+static Bool showImplicit = False;
+static Bool synch = False;
+static Bool computeDflts = False;
+static Bool xkblist = False;
+unsigned warningLevel = 5;
+unsigned verboseLevel = 0;
+unsigned dirsToStrip = 0;
+unsigned optionalParts = 0;
+static char *preErrorMsg = NULL;
+static char *postErrorMsg = NULL;
+static char *errorPrefix = NULL;
+static unsigned int device_id = XkbUseCoreKbd;
+
+/***====================================================================***/
+
+#define M(m) fprintf(stderr,(m))
+#define M1(m,a) fprintf(stderr,(m),(a))
+
+static void
+Usage(int argc, char *argv[])
+{
+ if (!xkblist)
+ M1("Usage: %s [options] input-file [ output-file ]\n", argv[0]);
+ else
+ M1("Usage: %s [options] file[(map)] ...\n", argv[0]);
+ M("Legal options:\n");
+ M("-?,-help Print this message\n");
+ if (!xkblist)
+ {
+ M("-a Show all actions\n");
+ M("-C Create a C header file\n");
+ }
+#ifdef DEBUG
+ M("-d [flags] Report debugging information\n");
+#endif
+ M("-em1 <msg> Print <msg> before printing first error message\n");
+ M("-emp <msg> Print <msg> at the start of each message line\n");
+ M("-eml <msg> If there were any errors, print <msg> before exiting\n");
+ if (!xkblist)
+ {
+ M("-dflts Compute defaults for missing parts\n");
+ M("-I[<dir>] Specifies a top level directory for include\n");
+ M(" directives. Multiple directories are legal.\n");
+ M("-l [flags] List matching maps in the specified files\n");
+ M(" f: list fully specified names\n");
+ M(" h: also list hidden maps\n");
+ M(" l: long listing (show flags)\n");
+ M(" p: also list partial maps\n");
+ M(" R: recursively list subdirectories\n");
+ M(" default is all options off\n");
+ }
+ M("-i <deviceid> Specifies device ID (not name) to compile for\n");
+ M("-m[ap] <map> Specifies map to compile\n");
+ M("-o <file> Specifies output file name\n");
+ if (!xkblist)
+ {
+ M("-opt[ional] <parts> Specifies optional components of keymap\n");
+ M(" Errors in optional parts are not fatal\n");
+ M(" <parts> can be any combination of:\n");
+ M(" c: compat map g: geometry\n");
+ M(" k: keycodes s: symbols\n");
+ M(" t: types\n");
+ }
+ if (xkblist)
+ {
+ M("-p <count> Specifies the number of slashes to be stripped\n");
+ M(" from the front of the map name on output\n");
+ }
+ M("-R[<DIR>] Specifies the root directory for\n");
+ M(" relative path names\n");
+ M("-synch Force synchronization\n");
+ if (xkblist)
+ {
+ M("-v [<flags>] Set level of detail for listing.\n");
+ M(" flags are as for the -l option\n");
+ }
+ M("-w [<lvl>] Set warning level (0=none, 10=all)\n");
+ if (!xkblist)
+ {
+ M("-xkb Create an XKB source (.xkb) file\n");
+ M("-xkm Create a compiled key map (.xkm) file\n");
+ }
+ return;
+}
+
+/***====================================================================***/
+
+static void
+setVerboseFlags(char *str)
+{
+ for (; *str; str++)
+ {
+ switch (*str)
+ {
+ case 'f':
+ verboseLevel |= WantFullNames;
+ break;
+ case 'h':
+ verboseLevel |= WantHiddenMaps;
+ break;
+ case 'l':
+ verboseLevel |= WantLongListing;
+ break;
+ case 'p':
+ verboseLevel |= WantPartialMaps;
+ break;
+ case 'R':
+ verboseLevel |= ListRecursive;
+ break;
+ default:
+ if (warningLevel > 4)
+ {
+ WARN1("Unknown verbose option \"%c\"\n", (unsigned int) *str);
+ ACTION("Ignored\n");
+ }
+ break;
+ }
+ }
+ return;
+}
+
+static Bool
+parseArgs(int argc, char *argv[])
+{
+ register int i, tmp;
+
+ i = strlen(argv[0]);
+ tmp = strlen("xkblist");
+ if ((i >= tmp) && (strcmp(&argv[0][i - tmp], "xkblist") == 0))
+ {
+ xkblist = True;
+ }
+ for (i = 1; i < argc; i++)
+ {
+ int itmp;
+ if ((argv[i][0] != '-') || (uStringEqual(argv[i], "-")))
+ {
+ if (!xkblist)
+ {
+ if (inputFile == NULL)
+ inputFile = argv[i];
+ else if (outputFile == NULL)
+ outputFile = argv[i];
+ else if (warningLevel > 0)
+ {
+ WARN("Too many file names on command line\n");
+ ACTION3
+ ("Compiling %s, writing to %s, ignoring %s\n",
+ inputFile, outputFile, argv[i]);
+ }
+ }
+ else if (!AddMatchingFiles(argv[i]))
+ return False;
+ }
+ else if ((strcmp(argv[i], "-?") == 0)
+ || (strcmp(argv[i], "-help") == 0))
+ {
+ Usage(argc, argv);
+ exit(0);
+ }
+ else if ((strcmp(argv[i], "-a") == 0) && (!xkblist))
+ {
+ showImplicit = True;
+ }
+ else if ((strcmp(argv[i], "-C") == 0) && (!xkblist))
+ {
+ if ((outputFormat != WANT_DEFAULT)
+ && (outputFormat != WANT_C_HDR))
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple output file formats specified\n");
+ ACTION1("\"%s\" flag ignored\n", argv[i]);
+ }
+ }
+ else
+ outputFormat = WANT_C_HDR;
+ }
+#ifdef DEBUG
+ else if (strcmp(argv[i], "-d") == 0)
+ {
+ if ((i >= (argc - 1)) || (!isdigit(argv[i + 1][0])))
+ {
+ debugFlags = 1;
+ }
+ else
+ {
+ if (sscanf(argv[++i], "%i", &itmp) == 1)
+ debugFlags = itmp;
+ }
+ INFO1("Setting debug flags to %d\n", debugFlags);
+ }
+#endif
+ else if ((strcmp(argv[i], "-dflts") == 0) && (!xkblist))
+ {
+ computeDflts = True;
+ }
+ else if (strcmp(argv[i], "-em1") == 0)
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No pre-error message specified\n");
+ ACTION("Trailing \"-em1\" option ignored\n");
+ }
+ }
+ else if (preErrorMsg != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple pre-error messsages specified\n");
+ ACTION2("Compiling %s, ignoring %s\n",
+ preErrorMsg, argv[i]);
+ }
+ }
+ else
+ preErrorMsg = argv[i];
+ }
+ else if (strcmp(argv[i], "-emp") == 0)
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No error prefix specified\n");
+ ACTION("Trailing \"-emp\" option ignored\n");
+ }
+ }
+ else if (errorPrefix != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple error prefixes specified\n");
+ ACTION2("Compiling %s, ignoring %s\n",
+ errorPrefix, argv[i]);
+ }
+ }
+ else
+ errorPrefix = argv[i];
+ }
+ else if (strcmp(argv[i], "-eml") == 0)
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No post-error message specified\n");
+ ACTION("Trailing \"-eml\" option ignored\n");
+ }
+ }
+ else if (postErrorMsg != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple post-error messages specified\n");
+ ACTION2("Compiling %s, ignoring %s\n",
+ postErrorMsg, argv[i]);
+ }
+ }
+ else
+ postErrorMsg = argv[i];
+ }
+ else if ((strncmp(argv[i], "-I", 2) == 0) && (!xkblist))
+ {
+ if (!XkbAddDirectoryToPath(&argv[i][2]))
+ {
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ }
+ else if ((strncmp(argv[i], "-i", 2) == 0) && (!xkblist))
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ WARN("No device ID specified\n");
+ }
+ device_id = atoi(argv[i]);
+ }
+ else if ((strncmp(argv[i], "-l", 2) == 0) && (!xkblist))
+ {
+ if (outputFormat != WANT_DEFAULT)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple output file formats specified\n");
+ ACTION1("\"%s\" flag ignored\n", argv[i]);
+ }
+ }
+ else
+ {
+ if (argv[i][2] != '\0')
+ setVerboseFlags(&argv[i][2]);
+ xkblist = True;
+ if ((inputFile) && (!AddMatchingFiles(inputFile)))
+ return False;
+ else
+ inputFile = NULL;
+ if ((outputFile) && (!AddMatchingFiles(outputFile)))
+ return False;
+ else
+ outputFile = NULL;
+ }
+ }
+ else if ((strcmp(argv[i], "-m") == 0)
+ || (strcmp(argv[i], "-map") == 0))
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No map name specified\n");
+ ACTION1("Trailing \"%s\" option ignored\n", argv[i - 1]);
+ }
+ }
+ else if (xkblist)
+ {
+ if (!AddMapOnly(argv[i]))
+ return False;
+ }
+ else if (inputMap != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple map names specified\n");
+ ACTION2("Compiling %s, ignoring %s\n", inputMap, argv[i]);
+ }
+ }
+ else
+ inputMap = argv[i];
+ }
+ else if ((strcmp(argv[i], "-merge") == 0) && (!xkblist))
+ {
+ /* Ignored */
+ }
+ else if (strcmp(argv[i], "-o") == 0)
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No output file specified\n");
+ ACTION("Trailing \"-o\" option ignored\n");
+ }
+ }
+ else if (outputFile != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple output files specified\n");
+ ACTION2("Compiling %s, ignoring %s\n", outputFile,
+ argv[i]);
+ }
+ }
+ else
+ outputFile = argv[i];
+ }
+ else if (((strcmp(argv[i], "-opt") == 0)
+ || (strcmp(argv[i], "optional") == 0)) && (!xkblist))
+ {
+ if (++i >= argc)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No optional components specified\n");
+ ACTION1("Trailing \"%s\" option ignored\n", argv[i - 1]);
+ }
+ }
+ else
+ {
+ char *tmp2;
+ for (tmp2 = argv[i]; (*tmp2 != '\0'); tmp2++)
+ {
+ switch (*tmp2)
+ {
+ case 'c':
+ case 'C':
+ optionalParts |= XkmCompatMapMask;
+ break;
+ case 'g':
+ case 'G':
+ optionalParts |= XkmGeometryMask;
+ break;
+ case 'k':
+ case 'K':
+ optionalParts |= XkmKeyNamesMask;
+ break;
+ case 's':
+ case 'S':
+ optionalParts |= XkmSymbolsMask;
+ break;
+ case 't':
+ case 'T':
+ optionalParts |= XkmTypesMask;
+ break;
+ default:
+ if (warningLevel > 0)
+ {
+ WARN1
+ ("Illegal component for %s option\n",
+ argv[i - 1]);
+ ACTION1
+ ("Ignoring unknown specifier \"%c\"\n",
+ (unsigned int) *tmp2);
+ }
+ break;
+ }
+ }
+ }
+ }
+ else if (strncmp(argv[i], "-p", 2) == 0)
+ {
+ if (isdigit(argv[i][2]))
+ {
+ if (sscanf(&argv[i][2], "%i", &itmp) == 1)
+ dirsToStrip = itmp;
+ }
+ else if ((i < (argc - 1)) && (isdigit(argv[i + 1][0])))
+ {
+ if (sscanf(argv[++i], "%i", &itmp) == 1)
+ dirsToStrip = itmp;
+ }
+ else
+ {
+ dirsToStrip = 0;
+ }
+ if (warningLevel > 5)
+ INFO1("Setting path count to %d\n", dirsToStrip);
+ }
+ else if (strncmp(argv[i], "-R", 2) == 0)
+ {
+ if (argv[i][2] == '\0')
+ {
+ if (warningLevel > 0)
+ {
+ WARN("No root directory specified\n");
+ ACTION("Ignoring -R option\n");
+ }
+ }
+ else if (rootDir != NULL)
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple root directories specified\n");
+ ACTION2("Using %s, ignoring %s\n", rootDir, argv[i]);
+ }
+ }
+ else
+ {
+ rootDir = &argv[i][2];
+ if (warningLevel > 8)
+ {
+ WARN1("Changing root directory to \"%s\"\n", rootDir);
+ }
+ XkbAddDirectoryToPath(rootDir);
+ if (!XkbAddDirectoryToPath(rootDir) && (warningLevel>0)) {
+ WARN1("Couldn't change directory to \"%s\"\n", rootDir);
+ ACTION("Root directory (-R) option ignored\n");
+ rootDir = NULL;
+ }
+ }
+ }
+ else if ((strcmp(argv[i], "-synch") == 0)
+ || (strcmp(argv[i], "-s") == 0))
+ {
+ synch = True;
+ }
+ else if (strncmp(argv[i], "-v", 2) == 0)
+ {
+ char *str;
+ if (argv[i][2] != '\0')
+ str = &argv[i][2];
+ else if ((i < (argc - 1)) && (argv[i + 1][0] != '-'))
+ str = argv[++i];
+ else
+ str = NULL;
+ if (str)
+ setVerboseFlags(str);
+ }
+ else if (strncmp(argv[i], "-w", 2) == 0)
+ {
+ if ((i >= (argc - 1)) || (!isdigit(argv[i + 1][0])))
+ {
+ warningLevel = 0;
+ if (isdigit(argv[i][1]))
+ if (sscanf(&argv[i][1], "%i", &itmp) == 1)
+ warningLevel = itmp;
+ }
+ else
+ {
+ if (sscanf(argv[++i], "%i", &itmp) == 1)
+ warningLevel = itmp;
+ }
+ }
+ else if ((strcmp(argv[i], "-xkb") == 0) && (!xkblist))
+ {
+ if ((outputFormat != WANT_DEFAULT)
+ && (outputFormat != WANT_XKB_FILE))
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple output file formats specified\n");
+ ACTION1("\"%s\" flag ignored\n", argv[i]);
+ }
+ }
+ else
+ outputFormat = WANT_XKB_FILE;
+ }
+ else if ((strcmp(argv[i], "-xkm") == 0) && (!xkblist))
+ {
+ if ((outputFormat != WANT_DEFAULT)
+ && (outputFormat != WANT_XKM_FILE))
+ {
+ if (warningLevel > 0)
+ {
+ WARN("Multiple output file formats specified\n");
+ ACTION1("\"%s\" flag ignored\n", argv[i]);
+ }
+ }
+ else
+ outputFormat = WANT_XKM_FILE;
+ }
+ else
+ {
+ ERROR1("Unknown flag \"%s\" on command line\n", argv[i]);
+ Usage(argc, argv);
+ return False;
+ }
+ }
+ if (xkblist)
+ inputFormat = INPUT_XKB;
+ else if (inputFile == NULL)
+ {
+ ERROR("No input file specified\n");
+ return False;
+ }
+ else if (uStringEqual(inputFile, "-"))
+ {
+ inputFormat = INPUT_XKB;
+ }
+#ifndef WIN32
+ else if (strchr(inputFile, ':') == NULL)
+ {
+#else
+ else if ((strchr(inputFile, ':') == NULL) || (strlen(inputFile) > 2 &&
+ isalpha(inputFile[0]) &&
+ inputFile[1] == ':'
+ && strchr(inputFile + 2,
+ ':') == NULL))
+ {
+#endif
+ int len;
+ len = strlen(inputFile);
+ if (inputFile[len - 1] == ')')
+ {
+ char *tmp;
+ if ((tmp = strchr(inputFile, '(')) != NULL)
+ {
+ *tmp = '\0';
+ inputFile[len - 1] = '\0';
+ tmp++;
+ if (*tmp == '\0')
+ {
+ WARN("Empty map in filename\n");
+ ACTION("Ignored\n");
+ }
+ else if (inputMap == NULL)
+ {
+ inputMap = uStringDup(tmp);
+ }
+ else
+ {
+ WARN("Map specified in filename and with -m flag\n");
+ ACTION1("map from name (\"%s\") ignored\n", tmp);
+ }
+ }
+ else
+ {
+ ERROR1("Illegal name \"%s\" for input file\n", inputFile);
+ return False;
+ }
+ }
+ if ((len > 4) && (strcmp(&inputFile[len - 4], ".xkm") == 0))
+ {
+ inputFormat = INPUT_XKM;
+ }
+ else
+ {
+ FILE *file;
+ file = fopen(inputFile, "r");
+ if (file)
+ {
+ if (XkmProbe(file))
+ inputFormat = INPUT_XKM;
+ else
+ inputFormat = INPUT_XKB;
+ fclose(file);
+ }
+ else
+ {
+ fprintf(stderr, "Cannot open \"%s\" for reading\n",
+ inputFile);
+ return False;
+ }
+ }
+ }
+ else
+ {
+ inDpyName = inputFile;
+ inputFile = NULL;
+ inputFormat = INPUT_XKM;
+ }
+
+ if (outputFormat == WANT_DEFAULT)
+ {
+ if (xkblist)
+ outputFormat = WANT_LISTING;
+ else if (inputFormat == INPUT_XKB)
+ outputFormat = WANT_XKM_FILE;
+ else
+ outputFormat = WANT_XKB_FILE;
+ }
+ if ((outputFormat == WANT_LISTING) && (inputFormat != INPUT_XKB))
+ {
+ if (inputFile)
+ ERROR("Cannot generate a listing from a .xkm file (yet)\n");
+ else
+ ERROR("Cannot generate a listing from an X connection (yet)\n");
+ return False;
+ }
+ if (xkblist)
+ {
+ if (outputFile == NULL)
+ outputFile = uStringDup("-");
+ else if (strchr(outputFile, ':') != NULL)
+ {
+ ERROR("Cannot write a listing to an X connection\n");
+ return False;
+ }
+ }
+ else if ((!outputFile) && (inputFile) && uStringEqual(inputFile, "-"))
+ {
+ int len = strlen("stdin") + strlen(fileTypeExt[outputFormat]) + 2;
+ outputFile = uTypedCalloc(len, char);
+ if (outputFile == NULL)
+ {
+ WSGO("Cannot allocate space for output file name\n");
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ sprintf(outputFile, "stdin.%s", fileTypeExt[outputFormat]);
+ }
+ else if ((outputFile == NULL) && (inputFile != NULL))
+ {
+ int len;
+ char *base, *ext;
+
+ if (inputMap == NULL)
+ {
+ base = strrchr(inputFile, '/');
+ if (base == NULL)
+ base = inputFile;
+ else
+ base++;
+ }
+ else
+ base = inputMap;
+
+ len = strlen(base) + strlen(fileTypeExt[outputFormat]) + 2;
+ outputFile = uTypedCalloc(len, char);
+ if (outputFile == NULL)
+ {
+ WSGO("Cannot allocate space for output file name\n");
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ ext = strrchr(base, '.');
+ if (ext == NULL)
+ sprintf(outputFile, "%s.%s", base, fileTypeExt[outputFormat]);
+ else
+ {
+ strcpy(outputFile, base);
+ strcpy(&outputFile[ext - base + 1], fileTypeExt[outputFormat]);
+ }
+ }
+ else if (outputFile == NULL)
+ {
+ int len;
+ char *ch, *name, buf[128];
+ if (inDpyName[0] == ':')
+ snprintf(name = buf, sizeof(buf), "server%s", inDpyName);
+ else
+ name = inDpyName;
+
+ len = strlen(name) + strlen(fileTypeExt[outputFormat]) + 2;
+ outputFile = uTypedCalloc(len, char);
+ if (outputFile == NULL)
+ {
+ WSGO("Cannot allocate space for output file name\n");
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ strcpy(outputFile, name);
+ for (ch = outputFile; (*ch) != '\0'; ch++)
+ {
+ if (*ch == ':')
+ *ch = '-';
+ else if (*ch == '.')
+ *ch = '_';
+ }
+ *ch++ = '.';
+ strcpy(ch, fileTypeExt[outputFormat]);
+ }
+#ifdef WIN32
+ else if (strlen(outputFile) > 2 &&
+ isalpha(outputFile[0]) &&
+ outputFile[1] == ':' && strchr(outputFile + 2, ':') == NULL)
+ {
+ }
+#endif
+ else if (strchr(outputFile, ':') != NULL)
+ {
+ outDpyName = outputFile;
+ outputFile = NULL;
+ outputFormat = WANT_X_SERVER;
+ }
+ return True;
+}
+
+static Display *
+GetDisplay(char *program, char *dpyName)
+{
+ int mjr, mnr, error;
+ Display *dpy;
+
+ mjr = XkbMajorVersion;
+ mnr = XkbMinorVersion;
+ dpy = XkbOpenDisplay(dpyName, NULL, NULL, &mjr, &mnr, &error);
+ if (dpy == NULL)
+ {
+ switch (error)
+ {
+ case XkbOD_BadLibraryVersion:
+ INFO3("%s was compiled with XKB version %d.%02d\n",
+ program, XkbMajorVersion, XkbMinorVersion);
+ ERROR2("X library supports incompatible version %d.%02d\n",
+ mjr, mnr);
+ break;
+ case XkbOD_ConnectionRefused:
+ ERROR1("Cannot open display \"%s\"\n", dpyName);
+ break;
+ case XkbOD_NonXkbServer:
+ ERROR1("XKB extension not present on %s\n", dpyName);
+ break;
+ case XkbOD_BadServerVersion:
+ INFO3("%s was compiled with XKB version %d.%02d\n",
+ program, XkbMajorVersion, XkbMinorVersion);
+ ERROR3("Server %s uses incompatible version %d.%02d\n",
+ dpyName, mjr, mnr);
+ break;
+ default:
+ WSGO1("Unknown error %d from XkbOpenDisplay\n", error);
+ }
+ }
+ else if (synch)
+ XSynchronize(dpy, True);
+ return dpy;
+}
+
+/***====================================================================***/
+
+extern int yydebug;
+
+int
+main(int argc, char *argv[])
+{
+ FILE *file; /* input file (or stdin) */
+ XkbFile *rtrn;
+ XkbFile *mapToUse;
+ int ok;
+ XkbFileInfo result;
+ Status status;
+
+ yyin = stdin;
+ uSetEntryFile(NullString);
+ uSetDebugFile(NullString);
+ uSetErrorFile(NullString);
+
+ XkbInitIncludePath();
+ if (!parseArgs(argc, argv))
+ exit(1);
+#ifdef DEBUG
+ if (debugFlags & 0x2)
+ yydebug = 1;
+#endif
+ if (preErrorMsg)
+ uSetPreErrorMessage(preErrorMsg);
+ if (errorPrefix)
+ uSetErrorPrefix(errorPrefix);
+ if (postErrorMsg)
+ uSetPostErrorMessage(postErrorMsg);
+ file = NULL;
+ XkbInitAtoms(NULL);
+ XkbAddDefaultDirectoriesToPath();
+ if (xkblist)
+ {
+ Bool gotSome;
+ gotSome = GenerateListing(outputFile);
+ if ((warningLevel > 7) && (!gotSome))
+ return -1;
+ return 0;
+ }
+ if (inputFile != NULL)
+ {
+ if (uStringEqual(inputFile, "-"))
+ {
+ file = stdin;
+ inputFile = "stdin";
+ }
+ else
+ {
+ file = fopen(inputFile, "r");
+ }
+ }
+ else if (inDpyName != NULL)
+ {
+ inDpy = GetDisplay(argv[0], inDpyName);
+ if (!inDpy)
+ {
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ }
+ if (outDpyName != NULL)
+ {
+ outDpy = GetDisplay(argv[0], outDpyName);
+ if (!outDpy)
+ {
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ }
+ if ((inDpy == NULL) && (outDpy == NULL))
+ {
+ int mjr, mnr;
+ mjr = XkbMajorVersion;
+ mnr = XkbMinorVersion;
+ if (!XkbLibraryVersion(&mjr, &mnr))
+ {
+ INFO3("%s was compiled with XKB version %d.%02d\n",
+ argv[0], XkbMajorVersion, XkbMinorVersion);
+ ERROR2("X library supports incompatible version %d.%02d\n",
+ mjr, mnr);
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ }
+ if (file)
+ {
+ ok = True;
+ setScanState(inputFile, 1);
+ if ((inputFormat == INPUT_XKB) /* parse .xkb file */
+ && (XKBParseFile(file, &rtrn) && (rtrn != NULL)))
+ {
+ fclose(file);
+ mapToUse = rtrn;
+ if (inputMap != NULL) /* map specified on cmdline? */
+ {
+ while ((mapToUse)
+ && (!uStringEqual(mapToUse->name, inputMap)))
+ {
+ mapToUse = (XkbFile *) mapToUse->common.next;
+ }
+ if (!mapToUse)
+ {
+ FATAL2("No map named \"%s\" in \"%s\"\n",
+ inputMap, inputFile);
+ /* NOTREACHED */
+ }
+ }
+ else if (rtrn->common.next != NULL)
+ {
+ /* look for map with XkbLC_Default flag. */
+ mapToUse = rtrn;
+ for (; mapToUse; mapToUse = (XkbFile *) mapToUse->common.next)
+ {
+ if (mapToUse->flags & XkbLC_Default)
+ break;
+ }
+ if (!mapToUse)
+ {
+ mapToUse = rtrn;
+ if (warningLevel > 4)
+ {
+ WARN1
+ ("No map specified, but \"%s\" has several\n",
+ inputFile);
+ ACTION1
+ ("Using the first defined map, \"%s\"\n",
+ mapToUse->name);
+ }
+ }
+ }
+ bzero((char *) &result, sizeof(result));
+ result.type = mapToUse->type;
+ if ((result.xkb = XkbAllocKeyboard()) == NULL)
+ {
+ WSGO("Cannot allocate keyboard description\n");
+ /* NOTREACHED */
+ }
+ switch (mapToUse->type)
+ {
+ case XkmSemanticsFile:
+ case XkmLayoutFile:
+ case XkmKeymapFile:
+ ok = CompileKeymap(mapToUse, &result, MergeReplace);
+ break;
+ case XkmKeyNamesIndex:
+ ok = CompileKeycodes(mapToUse, &result, MergeReplace);
+ break;
+ case XkmTypesIndex:
+ ok = CompileKeyTypes(mapToUse, &result, MergeReplace);
+ break;
+ case XkmSymbolsIndex:
+ /* if it's just symbols, invent key names */
+ result.xkb->flags |= AutoKeyNames;
+ ok = False;
+ break;
+ case XkmCompatMapIndex:
+ ok = CompileCompatMap(mapToUse, &result, MergeReplace, NULL);
+ break;
+ case XkmGeometryFile:
+ case XkmGeometryIndex:
+ /* if it's just a geometry, invent key names */
+ result.xkb->flags |= AutoKeyNames;
+ ok = CompileGeometry(mapToUse, &result, MergeReplace);
+ break;
+ default:
+ WSGO1("Unknown file type %d\n", mapToUse->type);
+ ok = False;
+ break;
+ }
+ }
+ else if (inputFormat == INPUT_XKM) /* parse xkm file */
+ {
+ unsigned tmp;
+ bzero((char *) &result, sizeof(result));
+ if ((result.xkb = XkbAllocKeyboard()) == NULL)
+ {
+ WSGO("Cannot allocate keyboard description\n");
+ /* NOTREACHED */
+ }
+ tmp = XkmReadFile(file, 0, XkmKeymapLegal, &result);
+ if (tmp == XkmKeymapLegal)
+ {
+ ERROR1("Cannot read XKM file \"%s\"\n", inputFile);
+ ok = False;
+ }
+ }
+ else
+ {
+ INFO1("Errors encountered in %s; not compiled.\n", inputFile);
+ ok = False;
+ }
+ }
+ else if (inDpy != NULL)
+ {
+ bzero((char *) &result, sizeof(result));
+ result.type = XkmKeymapFile;
+ result.xkb = XkbGetMap(inDpy, XkbAllMapComponentsMask, device_id);
+ if (result.xkb == NULL)
+ WSGO("Cannot load keyboard description\n");
+ if (XkbGetIndicatorMap(inDpy, ~0, result.xkb) != Success)
+ WSGO("Could not load indicator map\n");
+ if (XkbGetControls(inDpy, XkbAllControlsMask, result.xkb) != Success)
+ WSGO("Could not load keyboard controls\n");
+ if (XkbGetCompatMap(inDpy, XkbAllCompatMask, result.xkb) != Success)
+ WSGO("Could not load compatibility map\n");
+ if (XkbGetNames(inDpy, XkbAllNamesMask, result.xkb) != Success)
+ WSGO("Could not load names\n");
+ if ((status = XkbGetGeometry(inDpy, result.xkb)) != Success)
+ {
+ if (warningLevel > 3)
+ {
+ char buf[100];
+ buf[0] = '\0';
+ XGetErrorText(inDpy, status, buf, 100);
+ WARN1("Could not load keyboard geometry for %s\n", inDpyName);
+ ACTION1("%s\n", buf);
+ ACTION("Resulting keymap file will not describe geometry\n");
+ }
+ }
+ if (computeDflts)
+ ok = (ComputeKbdDefaults(result.xkb) == Success);
+ else
+ ok = True;
+ }
+ else
+ {
+ fprintf(stderr, "Cannot open \"%s\" to compile\n", inputFile);
+ ok = 0;
+ }
+ if (ok)
+ {
+ FILE *out = stdout;
+ if ((inDpy != outDpy) &&
+ (XkbChangeKbdDisplay(outDpy, &result) != Success))
+ {
+ WSGO2("Error converting keyboard display from %s to %s\n",
+ inDpyName, outDpyName);
+ exit(1);
+ }
+ if (outputFile != NULL)
+ {
+ if (uStringEqual(outputFile, "-"))
+ outputFile = "stdout";
+ else
+ {
+ /*
+ * fix to prevent symlink attack (e.g.,
+ * ln -s /etc/passwd /var/tmp/server-0.xkm)
+ */
+ /*
+ * this patch may have POSIX, Linux, or GNU libc bias
+ * -- Branden Robinson
+ */
+ int outputFileFd;
+ int binMode = 0;
+ const char *openMode = "w";
+ unlink(outputFile);
+#ifdef O_BINARY
+ switch (outputFormat)
+ {
+ case WANT_XKM_FILE:
+ binMode = O_BINARY;
+ openMode = "wb";
+ break;
+ default:
+ binMode = 0;
+ break;
+ }
+#endif
+#ifdef _MSC_VER
+ outputFileFd= open(outputFile, O_WRONLY|O_CREAT|O_EXCL|binMode,_S_IREAD | _S_IWRITE);
+#else
+ outputFileFd =
+ open(outputFile, O_WRONLY | O_CREAT | O_EXCL,
+ S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH
+ | S_IWOTH | binMode);
+#endif
+ if (outputFileFd < 0)
+ {
+ ERROR1
+ ("Cannot open \"%s\" to write keyboard description\n",
+ outputFile);
+ ACTION("Exiting\n");
+ exit(1);
+ }
+#ifndef WIN32
+ out = fdopen(outputFileFd, openMode);
+#else
+ close(outputFileFd);
+ out = fopen(outputFile, "wb");
+#endif
+ /* end BR */
+ if (out == NULL)
+ {
+ ERROR1
+ ("Cannot open \"%s\" to write keyboard description\n",
+ outputFile);
+ ACTION("Exiting\n");
+ exit(1);
+ }
+ }
+ }
+ switch (outputFormat)
+ {
+ case WANT_XKM_FILE:
+ ok = XkbWriteXKMFile(out, &result);
+ break;
+ case WANT_XKB_FILE:
+ ok = XkbWriteXKBFile(out, &result, showImplicit, NULL, NULL);
+ break;
+ case WANT_C_HDR:
+ ok = XkbWriteCFile(out, outputFile, &result);
+ break;
+ case WANT_X_SERVER:
+ if (!(ok = XkbWriteToServer(&result)))
+ {
+ ERROR2("%s in %s\n", _XkbErrMessages[_XkbErrCode],
+ _XkbErrLocation ? _XkbErrLocation : "unknown");
+ ACTION1("Couldn't write keyboard description to %s\n",
+ outDpyName);
+ }
+ break;
+ default:
+ WSGO1("Unknown output format %d\n", outputFormat);
+ ACTION("No output file created\n");
+ ok = False;
+ break;
+ }
+ if (outputFormat != WANT_X_SERVER)
+ {
+ if (fclose(out))
+ {
+ ERROR1("Cannot close \"%s\" properly (not enough space?)\n",
+ outputFile);
+ ok= False;
+ }
+ else if (!ok)
+ {
+ ERROR2("%s in %s\n", _XkbErrMessages[_XkbErrCode],
+ _XkbErrLocation ? _XkbErrLocation : "unknown");
+ }
+ if (!ok)
+ {
+ ACTION1("Output file \"%s\" removed\n", outputFile);
+ unlink(outputFile);
+ }
+ }
+ }
+ if (inDpy)
+ XCloseDisplay(inDpy);
+ inDpy = NULL;
+ if (outDpy)
+ XCloseDisplay(outDpy);
+ uFinishUp();
+ return (ok == 0);
+}
diff --git a/xkbcomp/xkbparse.c b/xkbcomp/xkbparse.c index 9d3b8aa6c..83ade0e25 100644 --- a/xkbcomp/xkbparse.c +++ b/xkbcomp/xkbparse.c @@ -1,3169 +1,3546 @@ -/* A Bison parser, made by GNU Bison 2.3. */ - -/* Skeleton implementation for Bison's Yacc-like parsers in C - - Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006 - Free Software Foundation, Inc. - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2, or (at your option) - any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 51 Franklin Street, Fifth Floor, - Boston, MA 02110-1301, USA. */ - -/* As a special exception, you may create a larger work that contains - part or all of the Bison parser skeleton and distribute that work - under terms of your choice, so long as that work isn't itself a - parser generator using the skeleton or a modified version thereof - as a parser skeleton. Alternatively, if you modify or redistribute - the parser skeleton itself, you may (at your option) remove this - special exception, which will cause the skeleton and the resulting - Bison output files to be licensed under the GNU General Public - License without this special exception. - - This special exception was added by the Free Software Foundation in - version 2.2 of Bison. */ - -/* C LALR(1) parser skeleton written by Richard Stallman, by - simplifying the original so-called "semantic" parser. */ - -/* All symbols defined below should begin with yy or YY, to avoid - infringing on user name space. This should be done even for local - variables, as they might otherwise be expanded by user macros. - There are some unavoidable exceptions within include files to - define necessary library symbols; they are noted "INFRINGES ON - USER NAME SPACE" below. */ - -/* Identify Bison output. */ -#define YYBISON 1 - -/* Bison version. */ -#define YYBISON_VERSION "2.3" - -/* Skeleton name. */ -#define YYSKELETON_NAME "yacc.c" - -/* Pure parsers. */ -#define YYPURE 0 - -/* Using locations. */ -#define YYLSP_NEEDED 0 - - - -/* Tokens. */ -#ifndef YYTOKENTYPE -# define YYTOKENTYPE - /* Put the tokens into the symbol table, so that GDB and other debuggers - know about them. */ - enum yytokentype { - END_OF_FILE = 0, - ERROR_TOK = 255, - XKB_KEYMAP = 1, - XKB_KEYCODES = 2, - XKB_TYPES = 3, - XKB_SYMBOLS = 4, - XKB_COMPATMAP = 5, - XKB_GEOMETRY = 6, - XKB_SEMANTICS = 7, - XKB_LAYOUT = 8, - INCLUDE = 10, - OVERRIDE = 11, - AUGMENT = 12, - REPLACE = 13, - ALTERNATE = 14, - VIRTUAL_MODS = 20, - TYPE = 21, - INTERPRET = 22, - ACTION_TOK = 23, - KEY = 24, - ALIAS = 25, - GROUP = 26, - MODIFIER_MAP = 27, - INDICATOR = 28, - SHAPE = 29, - KEYS = 30, - ROW = 31, - SECTION = 32, - OVERLAY = 33, - TEXT = 34, - OUTLINE = 35, - SOLID = 36, - LOGO = 37, - VIRTUAL = 38, - EQUALS = 40, - PLUS = 41, - MINUS = 42, - DIVIDE = 43, - TIMES = 44, - OBRACE = 45, - CBRACE = 46, - OPAREN = 47, - CPAREN = 48, - OBRACKET = 49, - CBRACKET = 50, - DOT = 51, - COMMA = 52, - SEMI = 53, - EXCLAM = 54, - INVERT = 55, - STRING = 60, - INTEGER = 61, - FLOAT = 62, - IDENT = 63, - KEYNAME = 64, - PARTIAL = 70, - DEFAULT = 71, - HIDDEN = 72, - ALPHANUMERIC_KEYS = 73, - MODIFIER_KEYS = 74, - KEYPAD_KEYS = 75, - FUNCTION_KEYS = 76, - ALTERNATE_GROUP = 77 - }; -#endif -/* Tokens. */ -#define END_OF_FILE 0 -#define ERROR_TOK 255 -#define XKB_KEYMAP 1 -#define XKB_KEYCODES 2 -#define XKB_TYPES 3 -#define XKB_SYMBOLS 4 -#define XKB_COMPATMAP 5 -#define XKB_GEOMETRY 6 -#define XKB_SEMANTICS 7 -#define XKB_LAYOUT 8 -#define INCLUDE 10 -#define OVERRIDE 11 -#define AUGMENT 12 -#define REPLACE 13 -#define ALTERNATE 14 -#define VIRTUAL_MODS 20 -#define TYPE 21 -#define INTERPRET 22 -#define ACTION_TOK 23 -#define KEY 24 -#define ALIAS 25 -#define GROUP 26 -#define MODIFIER_MAP 27 -#define INDICATOR 28 -#define SHAPE 29 -#define KEYS 30 -#define ROW 31 -#define SECTION 32 -#define OVERLAY 33 -#define TEXT 34 -#define OUTLINE 35 -#define SOLID 36 -#define LOGO 37 -#define VIRTUAL 38 -#define EQUALS 40 -#define PLUS 41 -#define MINUS 42 -#define DIVIDE 43 -#define TIMES 44 -#define OBRACE 45 -#define CBRACE 46 -#define OPAREN 47 -#define CPAREN 48 -#define OBRACKET 49 -#define CBRACKET 50 -#define DOT 51 -#define COMMA 52 -#define SEMI 53 -#define EXCLAM 54 -#define INVERT 55 -#define STRING 60 -#define INTEGER 61 -#define FLOAT 62 -#define IDENT 63 -#define KEYNAME 64 -#define PARTIAL 70 -#define DEFAULT 71 -#define HIDDEN 72 -#define ALPHANUMERIC_KEYS 73 -#define MODIFIER_KEYS 74 -#define KEYPAD_KEYS 75 -#define FUNCTION_KEYS 76 -#define ALTERNATE_GROUP 77 - - - - -/* Copy the first part of user declarations. */ -#line 91 "xkbparse.y" - -#ifdef DEBUG -#define YYDEBUG 1 -#endif -#define DEBUG_VAR parseDebug -#include "parseutils.h" -#include <X11/keysym.h> -#include <X11/extensions/XKBgeom.h> -#include <stdlib.h> - -unsigned int parseDebug; - - - -/* Enabling traces. */ -#ifndef YYDEBUG -# define YYDEBUG 0 -#endif - -/* Enabling verbose error messages. */ -#ifdef YYERROR_VERBOSE -# undef YYERROR_VERBOSE -# define YYERROR_VERBOSE 1 -#else -# define YYERROR_VERBOSE 0 -#endif - -/* Enabling the token table. */ -#ifndef YYTOKEN_TABLE -# define YYTOKEN_TABLE 0 -#endif - -#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED -typedef union YYSTYPE -#line 110 "xkbparse.y" -{ - int ival; - unsigned uval; - char *str; - Atom sval; - ParseCommon *any; - ExprDef *expr; - VarDef *var; - VModDef *vmod; - InterpDef *interp; - KeyTypeDef *keyType; - SymbolsDef *syms; - ModMapDef *modMask; - GroupCompatDef *groupCompat; - IndicatorMapDef *ledMap; - IndicatorNameDef *ledName; - KeycodeDef *keyName; - KeyAliasDef *keyAlias; - ShapeDef *shape; - SectionDef *section; - RowDef *row; - KeyDef *key; - OverlayDef *overlay; - OverlayKeyDef *olKey; - OutlineDef *outline; - DoodadDef *doodad; - XkbFile *file; -} -/* Line 187 of yacc.c. */ -#line 269 "xkbparse.c" - YYSTYPE; -# define yystype YYSTYPE /* obsolescent; will be withdrawn */ -# define YYSTYPE_IS_DECLARED 1 -# define YYSTYPE_IS_TRIVIAL 1 -#endif - - - -/* Copy the second part of user declarations. */ - - -/* Line 216 of yacc.c. */ -#line 282 "xkbparse.c" - -#ifdef short -# undef short -#endif - -#ifdef YYTYPE_UINT8 -typedef YYTYPE_UINT8 yytype_uint8; -#else -typedef unsigned char yytype_uint8; -#endif - -#ifdef YYTYPE_INT8 -typedef YYTYPE_INT8 yytype_int8; -#elif (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -typedef signed char yytype_int8; -#else -typedef short int yytype_int8; -#endif - -#ifdef YYTYPE_UINT16 -typedef YYTYPE_UINT16 yytype_uint16; -#else -typedef unsigned short int yytype_uint16; -#endif - -#ifdef YYTYPE_INT16 -typedef YYTYPE_INT16 yytype_int16; -#else -typedef short int yytype_int16; -#endif - -#ifndef YYSIZE_T -# ifdef __SIZE_TYPE__ -# define YYSIZE_T __SIZE_TYPE__ -# elif defined size_t -# define YYSIZE_T size_t -# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -# include <stddef.h> /* INFRINGES ON USER NAME SPACE */ -# define YYSIZE_T size_t -# else -# define YYSIZE_T unsigned int -# endif -#endif - -#define YYSIZE_MAXIMUM ((YYSIZE_T) -1) - -#ifndef YY_ -# if YYENABLE_NLS -# if ENABLE_NLS -# include <libintl.h> /* INFRINGES ON USER NAME SPACE */ -# define YY_(msgid) dgettext ("bison-runtime", msgid) -# endif -# endif -# ifndef YY_ -# define YY_(msgid) msgid -# endif -#endif - -/* Suppress unused-variable warnings by "using" E. */ -#if ! defined lint || defined __GNUC__ -# define YYUSE(e) ((void) (e)) -#else -# define YYUSE(e) /* empty */ -#endif - -/* Identity function, used to suppress warnings about constant conditions. */ -#ifndef lint -# define YYID(n) (n) -#else -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static int -YYID (int i) -#else -static int -YYID (i) - int i; -#endif -{ - return i; -} -#endif - -#if ! defined yyoverflow || YYERROR_VERBOSE - -/* The parser invokes alloca or malloc; define the necessary symbols. */ - -# ifdef YYSTACK_USE_ALLOCA -# if YYSTACK_USE_ALLOCA -# ifdef __GNUC__ -# define YYSTACK_ALLOC __builtin_alloca -# elif defined __BUILTIN_VA_ARG_INCR -# include <alloca.h> /* INFRINGES ON USER NAME SPACE */ -# elif defined _AIX -# define YYSTACK_ALLOC __alloca -# elif defined _MSC_VER -# include <malloc.h> /* INFRINGES ON USER NAME SPACE */ -# define alloca _alloca -# else -# define YYSTACK_ALLOC alloca -# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 -# endif -# endif -# endif -# endif -# endif - -# ifdef YYSTACK_ALLOC - /* Pacify GCC's `empty if-body' warning. */ -# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0)) -# ifndef YYSTACK_ALLOC_MAXIMUM - /* The OS might guarantee only one guard page at the bottom of the stack, - and a page size can be as small as 4096 bytes. So we cannot safely - invoke alloca (N) if N exceeds 4096. Use a slightly smaller number - to allow for a few compiler-allocated temporary stack slots. */ -# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */ -# endif -# else -# define YYSTACK_ALLOC YYMALLOC -# define YYSTACK_FREE YYFREE -# ifndef YYSTACK_ALLOC_MAXIMUM -# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM -# endif -# if (defined __cplusplus && ! defined _STDLIB_H \ - && ! ((defined YYMALLOC || defined malloc) \ - && (defined YYFREE || defined free))) -# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */ -# ifndef _STDLIB_H -# define _STDLIB_H 1 -# endif -# endif -# ifndef YYMALLOC -# define YYMALLOC malloc -# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -#ifndef _MSC_VER -void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */ -#endif -# endif -# endif -# ifndef YYFREE -# define YYFREE free -# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -#ifndef _MSC_VER -void free (void *); /* INFRINGES ON USER NAME SPACE */ -#endif -# endif -# endif -# endif -#endif /* ! defined yyoverflow || YYERROR_VERBOSE */ - - -#if (! defined yyoverflow \ - && (! defined __cplusplus \ - || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL))) - -/* A type that is properly aligned for any stack member. */ -union yyalloc -{ - yytype_int16 yyss; - YYSTYPE yyvs; - }; - -/* The size of the maximum gap between one aligned stack and the next. */ -# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1) - -/* The size of an array large to enough to hold all stacks, each with - N elements. */ -# define YYSTACK_BYTES(N) \ - ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \ - + YYSTACK_GAP_MAXIMUM) - -/* Copy COUNT objects from FROM to TO. The source and destination do - not overlap. */ -# ifndef YYCOPY -# if defined __GNUC__ && 1 < __GNUC__ -# define YYCOPY(To, From, Count) \ - __builtin_memcpy (To, From, (Count) * sizeof (*(From))) -# else -# define YYCOPY(To, From, Count) \ - do \ - { \ - YYSIZE_T yyi; \ - for (yyi = 0; yyi < (Count); yyi++) \ - (To)[yyi] = (From)[yyi]; \ - } \ - while (YYID (0)) -# endif -# endif - -/* Relocate STACK from its old location to the new one. The - local variables YYSIZE and YYSTACKSIZE give the old and new number of - elements in the stack, and YYPTR gives the new location of the - stack. Advance YYPTR to a properly aligned location for the next - stack. */ -# define YYSTACK_RELOCATE(Stack) \ - do \ - { \ - YYSIZE_T yynewbytes; \ - YYCOPY (&yyptr->Stack, Stack, yysize); \ - Stack = &yyptr->Stack; \ - yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \ - yyptr += yynewbytes / sizeof (*yyptr); \ - } \ - while (YYID (0)) - -#endif - -/* YYFINAL -- State number of the termination state. */ -#define YYFINAL 18 -/* YYLAST -- Last index in YYTABLE. */ -#define YYLAST 706 - -/* YYNTOKENS -- Number of terminals. */ -#define YYNTOKENS 65 -/* YYNNTS -- Number of nonterminals. */ -#define YYNNTS 73 -/* YYNRULES -- Number of rules. */ -#define YYNRULES 184 -/* YYNRULES -- Number of states. */ -#define YYNSTATES 335 - -/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */ -#define YYUNDEFTOK 2 -#define YYMAXUTOK 257 - -#define YYTRANSLATE(YYX) \ - ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK) - -/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */ -static const yytype_uint8 yytranslate[] = -{ - 0, 4, 5, 6, 7, 8, 9, 10, 11, 2, - 12, 13, 14, 15, 16, 2, 2, 2, 2, 2, - 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, - 27, 28, 29, 30, 31, 32, 33, 34, 35, 2, - 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, - 46, 47, 48, 49, 50, 51, 2, 2, 2, 2, - 52, 53, 54, 55, 56, 2, 2, 2, 2, 2, - 57, 58, 59, 60, 61, 62, 63, 64, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 3, 1, 2 -}; - -#if YYDEBUG -/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in - YYRHS. */ -static const yytype_uint16 yyprhs[] = -{ - 0, 0, 3, 5, 7, 9, 12, 14, 22, 24, - 26, 28, 31, 33, 41, 46, 48, 50, 52, 54, - 56, 58, 59, 62, 64, 66, 68, 70, 72, 74, - 76, 78, 80, 83, 84, 87, 90, 93, 96, 99, - 102, 105, 108, 111, 114, 117, 120, 123, 126, 129, - 134, 137, 141, 146, 152, 156, 160, 162, 164, 168, - 175, 179, 181, 184, 186, 193, 200, 204, 206, 207, - 211, 215, 217, 220, 222, 226, 230, 236, 243, 250, - 256, 263, 270, 277, 284, 287, 289, 295, 297, 299, - 301, 303, 306, 308, 314, 316, 320, 322, 324, 328, - 335, 339, 341, 345, 349, 351, 355, 361, 365, 369, - 371, 377, 384, 386, 388, 390, 392, 394, 396, 398, - 400, 402, 404, 406, 408, 410, 412, 414, 416, 418, - 420, 421, 423, 425, 427, 429, 431, 433, 434, 438, - 440, 444, 448, 452, 456, 460, 462, 465, 468, 471, - 474, 476, 481, 483, 487, 491, 493, 498, 500, 504, - 509, 516, 518, 520, 522, 524, 526, 527, 531, 533, - 535, 537, 539, 542, 544, 546, 548, 550, 552, 554, - 556, 558, 560, 562, 563 -}; - -/* YYRHS -- A `-1'-separated list of the rules' RHS. */ -static const yytype_int16 yyrhs[] = -{ - 66, 0, -1, 67, -1, 70, -1, 72, -1, 67, - 68, -1, 68, -1, 74, 69, 136, 41, 70, 42, - 49, -1, 4, -1, 10, -1, 11, -1, 70, 71, - -1, 71, -1, 74, 73, 136, 41, 77, 42, 49, - -1, 74, 73, 136, 77, -1, 5, -1, 6, -1, - 8, -1, 7, -1, 9, -1, 75, -1, -1, 75, - 76, -1, 76, -1, 57, -1, 58, -1, 59, -1, - 60, -1, 61, -1, 62, -1, 63, -1, 64, -1, - 77, 78, -1, -1, 116, 79, -1, 116, 82, -1, - 116, 85, -1, 116, 80, -1, 116, 81, -1, 116, - 88, -1, 116, 89, -1, 116, 94, -1, 116, 93, - -1, 116, 95, -1, 116, 96, -1, 116, 97, -1, - 116, 98, -1, 116, 112, -1, 117, 52, -1, 124, - 36, 120, 49, -1, 134, 49, -1, 50, 134, 49, - -1, 133, 36, 120, 49, -1, 22, 133, 36, 133, - 49, -1, 17, 83, 49, -1, 83, 48, 84, -1, - 84, -1, 134, -1, 134, 36, 120, -1, 19, 86, - 41, 87, 42, 49, -1, 128, 37, 120, -1, 128, - -1, 87, 79, -1, 79, -1, 18, 135, 41, 87, - 42, 49, -1, 21, 133, 41, 90, 42, 49, -1, - 90, 48, 91, -1, 91, -1, -1, 124, 36, 120, - -1, 124, 36, 92, -1, 134, -1, 50, 134, -1, - 92, -1, 45, 126, 46, -1, 45, 122, 46, -1, - 23, 132, 36, 120, 49, -1, 24, 134, 41, 119, - 42, 49, -1, 25, 135, 41, 87, 42, 49, -1, - 25, 132, 36, 120, 49, -1, 35, 25, 132, 36, - 120, 49, -1, 26, 135, 41, 108, 42, 49, -1, - 26, 135, 41, 110, 42, 49, -1, 29, 135, 41, - 99, 42, 49, -1, 99, 100, -1, 100, -1, 28, - 41, 101, 42, 49, -1, 79, -1, 112, -1, 95, - -1, 105, -1, 101, 102, -1, 102, -1, 27, 41, - 103, 42, 49, -1, 79, -1, 103, 48, 104, -1, - 104, -1, 133, -1, 41, 119, 42, -1, 30, 135, - 41, 106, 42, 49, -1, 106, 48, 107, -1, 107, - -1, 133, 36, 133, -1, 108, 48, 109, -1, 109, - -1, 41, 110, 42, -1, 134, 36, 41, 110, 42, - -1, 134, 36, 120, -1, 110, 48, 111, -1, 111, - -1, 45, 129, 48, 129, 46, -1, 113, 135, 41, - 87, 42, 49, -1, 31, -1, 32, -1, 33, -1, - 34, -1, 134, -1, 115, -1, 20, -1, 19, -1, - 18, -1, 21, -1, 23, -1, 24, -1, 25, -1, - 26, -1, 28, -1, 29, -1, 31, -1, 117, -1, - -1, 12, -1, 14, -1, 13, -1, 15, -1, 16, - -1, 119, -1, -1, 119, 48, 120, -1, 120, -1, - 120, 39, 120, -1, 120, 37, 120, -1, 120, 38, - 120, -1, 120, 40, 120, -1, 124, 36, 120, -1, - 121, -1, 38, 121, -1, 37, 121, -1, 50, 121, - -1, 51, 121, -1, 124, -1, 114, 43, 118, 44, - -1, 125, -1, 43, 120, 44, -1, 122, 48, 123, - -1, 123, -1, 114, 43, 118, 44, -1, 114, -1, - 114, 47, 114, -1, 114, 45, 120, 46, -1, 114, - 47, 114, 45, 120, 46, -1, 135, -1, 132, -1, - 131, -1, 133, -1, 127, -1, -1, 127, 48, 128, - -1, 128, -1, 55, -1, 29, -1, 132, -1, 38, - 130, -1, 130, -1, 54, -1, 53, -1, 54, -1, - 53, -1, 56, -1, 55, -1, 58, -1, 52, -1, - 137, -1, -1, 52, -1 -}; - -/* YYRLINE[YYN] -- source line where rule number YYN was defined. */ -static const yytype_uint16 yyrline[] = -{ - 0, 168, 168, 170, 172, 176, 178, 182, 188, 189, - 190, 193, 195, 199, 205, 210, 211, 212, 213, 214, - 217, 218, 221, 222, 225, 226, 227, 228, 229, 230, - 231, 232, 235, 237, 240, 245, 250, 255, 260, 265, - 270, 275, 280, 285, 290, 295, 300, 305, 310, 322, - 324, 326, 330, 341, 351, 355, 357, 361, 363, 367, - 376, 378, 382, 384, 388, 394, 400, 402, 404, 407, - 409, 411, 413, 415, 419, 421, 425, 429, 433, 437, - 439, 443, 445, 453, 457, 459, 463, 465, 467, 469, - 471, 475, 477, 481, 483, 487, 489, 493, 495, 499, - 503, 508, 512, 516, 518, 522, 524, 526, 530, 532, - 536, 546, 550, 551, 552, 553, 556, 557, 560, 562, - 564, 566, 568, 570, 572, 574, 576, 578, 580, 584, - 585, 588, 589, 590, 591, 592, 595, 596, 599, 601, - 605, 607, 609, 611, 613, 615, 619, 621, 623, 625, - 627, 629, 631, 633, 637, 639, 643, 647, 654, 662, - 671, 682, 689, 696, 703, 714, 715, 718, 720, 724, - 739, 743, 750, 751, 754, 755, 758, 761, 764, 767, - 768, 771, 774, 775, 778 -}; -#endif - -#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE -/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM. - First, the terminals, then, starting at YYNTOKENS, nonterminals. */ -static const char *const yytname[] = -{ - "END_OF_FILE", "error", "$undefined", "ERROR_TOK", "XKB_KEYMAP", - "XKB_KEYCODES", "XKB_TYPES", "XKB_SYMBOLS", "XKB_COMPATMAP", - "XKB_GEOMETRY", "XKB_SEMANTICS", "XKB_LAYOUT", "INCLUDE", "OVERRIDE", - "AUGMENT", "REPLACE", "ALTERNATE", "VIRTUAL_MODS", "TYPE", "INTERPRET", - "ACTION_TOK", "KEY", "ALIAS", "GROUP", "MODIFIER_MAP", "INDICATOR", - "SHAPE", "KEYS", "ROW", "SECTION", "OVERLAY", "TEXT", "OUTLINE", "SOLID", - "LOGO", "VIRTUAL", "EQUALS", "PLUS", "MINUS", "DIVIDE", "TIMES", - "OBRACE", "CBRACE", "OPAREN", "CPAREN", "OBRACKET", "CBRACKET", "DOT", - "COMMA", "SEMI", "EXCLAM", "INVERT", "STRING", "INTEGER", "FLOAT", - "IDENT", "KEYNAME", "PARTIAL", "DEFAULT", "HIDDEN", "ALPHANUMERIC_KEYS", - "MODIFIER_KEYS", "KEYPAD_KEYS", "FUNCTION_KEYS", "ALTERNATE_GROUP", - "$accept", "XkbFile", "XkbCompMapList", "XkbCompositeMap", - "XkbCompositeType", "XkbMapConfigList", "XkbMapConfig", "XkbConfig", - "FileType", "OptFlags", "Flags", "Flag", "DeclList", "Decl", "VarDecl", - "KeyNameDecl", "KeyAliasDecl", "VModDecl", "VModDefList", "VModDef", - "InterpretDecl", "InterpretMatch", "VarDeclList", "KeyTypeDecl", - "SymbolsDecl", "SymbolsBody", "SymbolsVarDecl", "ArrayInit", - "GroupCompatDecl", "ModMapDecl", "IndicatorMapDecl", "IndicatorNameDecl", - "ShapeDecl", "SectionDecl", "SectionBody", "SectionBodyItem", "RowBody", - "RowBodyItem", "Keys", "Key", "OverlayDecl", "OverlayKeyList", - "OverlayKey", "OutlineList", "OutlineInList", "CoordList", "Coord", - "DoodadDecl", "DoodadType", "FieldSpec", "Element", "OptMergeMode", - "MergeMode", "OptExprList", "ExprList", "Expr", "Term", "ActionList", - "Action", "Lhs", "Terminal", "OptKeySymList", "KeySymList", "KeySym", - "SignedNumber", "Number", "Float", "Integer", "KeyName", "Ident", - "String", "OptMapName", "MapName", 0 -}; -#endif - -# ifdef YYPRINT -/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to - token YYLEX-NUM. */ -static const yytype_uint16 yytoknum[] = -{ - 0, 256, 257, 255, 1, 2, 3, 4, 5, 6, - 7, 8, 10, 11, 12, 13, 14, 20, 21, 22, - 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, - 33, 34, 35, 36, 37, 38, 40, 41, 42, 43, - 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, - 54, 55, 60, 61, 62, 63, 64, 70, 71, 72, - 73, 74, 75, 76, 77 -}; -# endif - -/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */ -static const yytype_uint8 yyr1[] = -{ - 0, 65, 66, 66, 66, 67, 67, 68, 69, 69, - 69, 70, 70, 71, 72, 73, 73, 73, 73, 73, - 74, 74, 75, 75, 76, 76, 76, 76, 76, 76, - 76, 76, 77, 77, 78, 78, 78, 78, 78, 78, - 78, 78, 78, 78, 78, 78, 78, 78, 78, 79, - 79, 79, 80, 81, 82, 83, 83, 84, 84, 85, - 86, 86, 87, 87, 88, 89, 90, 90, 90, 91, - 91, 91, 91, 91, 92, 92, 93, 94, 95, 96, - 96, 97, 97, 98, 99, 99, 100, 100, 100, 100, - 100, 101, 101, 102, 102, 103, 103, 104, 104, 105, - 106, 106, 107, 108, 108, 109, 109, 109, 110, 110, - 111, 112, 113, 113, 113, 113, 114, 114, 115, 115, - 115, 115, 115, 115, 115, 115, 115, 115, 115, 116, - 116, 117, 117, 117, 117, 117, 118, 118, 119, 119, - 120, 120, 120, 120, 120, 120, 121, 121, 121, 121, - 121, 121, 121, 121, 122, 122, 123, 124, 124, 124, - 124, 125, 125, 125, 125, 126, 126, 127, 127, 128, - 128, 128, 129, 129, 130, 130, 131, 132, 133, 134, - 134, 135, 136, 136, 137 -}; - -/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */ -static const yytype_uint8 yyr2[] = -{ - 0, 2, 1, 1, 1, 2, 1, 7, 1, 1, - 1, 2, 1, 7, 4, 1, 1, 1, 1, 1, - 1, 0, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 2, 0, 2, 2, 2, 2, 2, 2, - 2, 2, 2, 2, 2, 2, 2, 2, 2, 4, - 2, 3, 4, 5, 3, 3, 1, 1, 3, 6, - 3, 1, 2, 1, 6, 6, 3, 1, 0, 3, - 3, 1, 2, 1, 3, 3, 5, 6, 6, 5, - 6, 6, 6, 6, 2, 1, 5, 1, 1, 1, - 1, 2, 1, 5, 1, 3, 1, 1, 3, 6, - 3, 1, 3, 3, 1, 3, 5, 3, 3, 1, - 5, 6, 1, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, - 0, 1, 1, 1, 1, 1, 1, 0, 3, 1, - 3, 3, 3, 3, 3, 1, 2, 2, 2, 2, - 1, 4, 1, 3, 3, 1, 4, 1, 3, 4, - 6, 1, 1, 1, 1, 1, 0, 3, 1, 1, - 1, 1, 2, 1, 1, 1, 1, 1, 1, 1, - 1, 1, 1, 0, 1 -}; - -/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state - STATE-NUM when YYTABLE doesn't specify something else to do. Zero - means the default is an error. */ -static const yytype_uint8 yydefact[] = -{ - 21, 24, 25, 26, 27, 28, 29, 30, 31, 0, - 21, 6, 21, 12, 4, 0, 20, 23, 1, 5, - 0, 11, 0, 8, 15, 16, 18, 17, 19, 9, - 10, 183, 183, 22, 183, 184, 0, 182, 33, 0, - 21, 33, 130, 21, 130, 131, 133, 132, 134, 135, - 32, 0, 129, 0, 0, 0, 120, 119, 118, 121, - 0, 122, 123, 124, 125, 126, 127, 128, 113, 114, - 115, 0, 0, 179, 178, 180, 34, 37, 38, 35, - 36, 39, 40, 42, 41, 43, 44, 45, 46, 47, - 0, 157, 117, 0, 0, 116, 48, 7, 13, 0, - 56, 57, 181, 0, 170, 177, 169, 0, 61, 171, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 50, 0, 54, 0, 0, - 0, 0, 68, 0, 0, 0, 0, 0, 0, 0, - 0, 51, 0, 120, 119, 121, 122, 123, 124, 125, - 127, 128, 0, 0, 0, 0, 0, 176, 157, 0, - 145, 150, 152, 163, 162, 164, 116, 161, 158, 0, - 0, 55, 58, 63, 0, 0, 60, 166, 0, 0, - 67, 73, 0, 116, 0, 0, 0, 139, 0, 0, - 0, 0, 0, 104, 0, 109, 0, 124, 126, 0, - 87, 89, 0, 85, 90, 88, 0, 0, 147, 150, - 146, 0, 148, 149, 137, 0, 0, 0, 0, 159, - 0, 0, 49, 52, 0, 62, 0, 170, 169, 0, - 0, 155, 0, 165, 168, 72, 0, 0, 0, 53, - 76, 0, 0, 79, 0, 0, 0, 175, 174, 0, - 173, 0, 0, 0, 0, 0, 0, 0, 0, 84, - 0, 0, 153, 0, 136, 141, 142, 140, 143, 144, - 0, 64, 59, 137, 75, 0, 74, 0, 65, 66, - 70, 69, 77, 138, 78, 105, 172, 0, 81, 103, - 82, 108, 0, 107, 0, 94, 0, 92, 0, 83, - 80, 111, 151, 160, 0, 154, 167, 0, 0, 0, - 0, 91, 0, 101, 0, 156, 110, 106, 0, 0, - 96, 97, 86, 0, 0, 0, 0, 0, 0, 99, - 100, 102, 98, 93, 95 -}; - -/* YYDEFGOTO[NTERM-NUM]. */ -static const yytype_int16 yydefgoto[] = -{ - -1, 9, 10, 11, 31, 12, 13, 14, 32, 22, - 16, 17, 42, 50, 173, 77, 78, 79, 99, 100, - 80, 107, 174, 81, 82, 179, 180, 181, 83, 84, - 201, 86, 87, 88, 202, 203, 296, 297, 319, 320, - 204, 312, 313, 192, 193, 194, 195, 205, 90, 158, - 92, 51, 52, 263, 264, 187, 160, 230, 231, 161, - 162, 232, 233, 108, 249, 250, 163, 164, 165, 166, - 167, 36, 37 -}; - -/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing - STATE-NUM. */ -#define YYPACT_NINF -188 -static const yytype_int16 yypact[] = -{ - 628, -188, -188, -188, -188, -188, -188, -188, -188, 12, - 4, -188, 58, -188, -188, 695, 628, -188, -188, -188, - 121, -188, 408, -188, -188, -188, -188, -188, -188, -188, - -188, -9, -9, -188, -9, -188, 19, -188, 45, 45, - 628, -188, 174, 620, 137, -188, -188, -188, -188, -188, - -188, 317, 39, -15, 50, 1, 59, -18, -188, 72, - 72, 106, 1, -27, 59, -188, 59, 62, -188, -188, - -188, 117, 1, -188, -188, -188, -188, -188, -188, -188, - -188, -188, -188, -188, -188, -188, -188, -188, -188, -188, - 59, 51, -188, 125, 146, 134, -188, -188, -188, 132, - -188, 163, -188, 168, -188, -188, -188, 173, 179, -188, - 178, 186, 190, 194, 206, 204, 208, 221, 106, 216, - 225, 265, 640, 265, 265, -188, 1, -188, 265, 599, - 599, 265, 470, 72, 265, 265, 265, 599, -26, 21, - 239, -188, 599, -188, -188, -188, -188, -188, -188, -188, - -188, -188, 265, 265, 265, 265, 265, -188, 159, 232, - -188, 240, -188, -188, -188, -188, -188, -188, 223, 98, - 156, -188, 260, -188, 485, 513, 260, 617, 1, 30, - -188, -188, 243, 32, 231, 192, 64, 260, 199, 528, - 236, 35, 127, -188, 128, -188, 251, 59, 270, 59, - -188, -188, 422, -188, -188, -188, 265, 556, -188, -188, - -188, 342, -188, -188, 265, 265, 265, 265, 265, -188, - 265, 265, -188, -188, 263, -188, 264, 249, 271, 281, - 61, -188, 279, 278, -188, -188, 280, 470, 340, -188, - -188, 283, 265, -188, 284, 129, 16, -188, -188, 282, - -188, 298, -34, 308, 236, 381, 576, 287, 321, -188, - 215, 325, -188, 332, 336, 158, 158, -188, -188, 260, - 316, -188, -188, 265, -188, 640, -188, -18, -188, -188, - -188, 260, -188, 260, -188, -188, -188, 35, -188, -188, - -188, -188, 236, 260, 346, -188, 442, -188, 72, -188, - -188, -188, -188, -188, 344, -188, -188, 343, 143, -28, - 348, -188, 176, -188, 367, -188, -188, -188, 265, 198, - -188, -188, -188, 359, 72, 72, 202, 362, -28, -188, - -188, -188, -188, -188, -188 -}; - -/* YYPGOTO[NTERM-NUM]. */ -static const yytype_int16 yypgoto[] = -{ - -188, -188, -188, 410, -188, 383, -7, -188, 399, 38, - -188, 409, 385, -188, -35, -188, -188, -188, -188, 301, - -188, -188, -47, -188, -188, -188, 191, 200, -188, -188, - 378, -188, -188, -188, -188, 228, -188, 148, -188, 130, - -188, -188, 133, -188, 197, -187, 205, 423, -188, 26, - -188, -188, -188, 203, -134, 89, 104, -188, 207, -29, - -188, -188, -188, -175, 188, 233, -188, -43, -51, -45, - -33, 109, -188 -}; - -/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If - positive, shift that token. If negative, reduce the rule which - number is the opposite. If zero, do what YYDEFACT says. - If YYTABLE_NINF, syntax error. */ -#define YYTABLE_NINF -180 -static const yytype_int16 yytable[] = -{ - 94, 186, 234, 245, -2, 21, 95, 190, 110, 111, - 101, 104, 18, 318, 109, 190, 76, 113, 112, 191, - 114, 73, 93, 103, 75, 102, 105, 119, 74, 73, - 115, 116, 75, 117, 97, 105, 21, 106, 15, 143, - 144, 58, 145, 35, 146, 147, 197, 149, 20, 198, - 150, 199, 67, 68, 69, 70, 73, 120, -3, 75, - 40, 1, 2, 3, 4, 5, 6, 7, 8, 247, - 248, 72, 236, 246, -71, 140, 73, 91, 237, 75, - -71, 101, 184, 175, 95, 95, 41, 183, 247, 248, - 189, 96, 95, 196, 95, 207, 121, 95, 122, 98, - 93, 93, 306, 182, 200, 308, 241, 274, 93, 275, - 93, 102, 242, 93, -112, 1, 2, 3, 4, 5, - 6, 7, 8, 209, 209, 23, 209, 209, 74, 95, - 95, 29, 30, 235, 109, 215, 216, 217, 218, 225, - 225, 38, 118, 39, 95, 93, 93, 222, 168, 45, - 46, 47, 48, 49, 225, 91, 91, 95, 91, 105, - 93, 123, 95, 91, 115, 91, 257, 200, 91, 251, - 253, 285, 225, 93, -14, 252, 254, 254, 93, 54, - 126, 127, 124, 125, 326, 317, 45, 46, 47, 48, - 49, 254, 183, 215, 216, 217, 218, 217, 218, 128, - 91, 91, 214, 229, 121, 223, 122, 196, 182, 129, - 159, 95, 169, 170, 130, 91, 131, 172, 323, 132, - 176, 295, 133, 185, 324, 188, 134, 93, 91, 215, - 216, 217, 218, 91, 109, 135, 215, 216, 217, 218, - 327, 240, 136, 211, 332, 137, 328, 314, 243, 138, - 242, 95, 215, 216, 217, 218, 208, 210, 321, 212, - 213, 295, 139, 91, 300, 141, 142, 93, 221, 215, - 216, 217, 218, 314, 331, 206, 220, 321, 219, 238, - 239, 191, 91, 143, 144, 58, 145, 255, 146, 147, - 148, 149, -127, 65, 150, 260, 151, 215, 216, 217, - 218, 229, 152, 153, 265, 266, 267, 268, 154, 269, - 270, 256, 271, 272, -179, 155, 156, 102, 105, 157, - 73, 74, 91, 75, 273, 276, 277, 281, 298, 278, - 287, 283, 282, 284, 55, 56, 57, 58, 59, 60, - 61, 62, 63, 64, 293, 65, 66, 288, 67, 68, - 69, 70, 71, 215, 216, 217, 218, 290, 143, 144, - 58, 145, 303, 146, 147, 148, 149, 72, 65, 150, - 299, 151, 73, 74, 301, 75, 302, 152, 153, 215, - 216, 217, 218, 154, 242, 177, 262, 309, 315, 316, - 155, 156, 102, 105, 157, 73, 74, 322, 75, 143, - 144, 58, 145, 325, 146, 147, 148, 149, 329, 65, - 150, 333, 151, 24, 25, 26, 27, 28, 152, 153, - 19, 34, 292, 43, 154, 33, 44, 171, 279, 85, - 259, 155, 156, 102, 105, 157, 73, 74, 280, 75, - 143, 144, 58, 145, 311, 146, 147, 197, 149, 289, - 198, 150, 199, 67, 68, 69, 70, 330, 334, 291, - 143, 144, 58, 145, 258, 146, 147, 148, 149, 294, - 65, 150, 72, 151, 89, 307, 304, 73, 0, 286, - 75, 0, 305, 0, 310, 0, 0, 0, 143, 144, - 58, 145, 72, 146, 147, 148, 149, 73, 65, 150, - 75, 151, 0, 143, 144, 58, 145, 0, 146, 147, - 148, 149, 0, 65, 150, 177, 151, 0, 0, 0, - 178, 0, 0, 0, 0, 73, 0, 224, 75, 0, - 0, 143, 144, 58, 145, 72, 146, 147, 148, 149, - 73, 65, 150, 75, 151, 0, 143, 144, 58, 145, - 0, 146, 147, 148, 149, 226, 65, 150, 0, 151, - 0, 0, 0, 72, 0, 0, 0, 0, 73, 0, - 244, 75, 0, 0, 143, 144, 58, 145, 72, 146, - 147, 148, 149, 73, 65, 150, 75, 151, 0, 0, - 0, 0, 0, 0, 143, 144, 58, 145, 261, 146, - 147, 148, 149, 294, 65, 150, 72, 151, 0, 0, - 0, 73, 0, 0, 75, 0, 0, 143, 144, 58, - 145, 0, 146, 147, 148, 149, 72, 65, 150, 0, - 151, 73, 0, 0, 75, 143, 144, 58, 145, 0, - 146, 147, 148, 149, 0, 65, 227, 0, 151, 72, - 0, 0, 0, 0, 73, 0, 0, 75, 143, 144, - 58, 145, 53, 146, 147, 148, 149, 0, 65, 150, - 105, 151, 228, 0, 0, 75, 0, 1, 2, 3, - 4, 5, 6, 7, 8, 1, 2, 3, 4, 5, - 6, 7, 8, 0, 0, 73, 0, 0, 75, 23, - 24, 25, 26, 27, 28, 29, 30 -}; - -static const yytype_int16 yycheck[] = -{ - 51, 135, 177, 190, 0, 12, 51, 41, 59, 60, - 55, 29, 0, 41, 57, 41, 51, 62, 61, 45, - 63, 55, 51, 56, 58, 52, 53, 72, 56, 55, - 63, 64, 58, 66, 49, 53, 43, 55, 0, 18, - 19, 20, 21, 52, 23, 24, 25, 26, 10, 28, - 29, 30, 31, 32, 33, 34, 55, 90, 0, 58, - 41, 57, 58, 59, 60, 61, 62, 63, 64, 53, - 54, 50, 42, 38, 42, 118, 55, 51, 48, 58, - 48, 126, 133, 130, 129, 130, 41, 132, 53, 54, - 137, 52, 137, 138, 139, 142, 45, 142, 47, 49, - 129, 130, 277, 132, 139, 292, 42, 46, 137, 48, - 139, 52, 48, 142, 52, 57, 58, 59, 60, 61, - 62, 63, 64, 152, 153, 4, 155, 156, 56, 174, - 175, 10, 11, 178, 177, 37, 38, 39, 40, 174, - 175, 32, 25, 34, 189, 174, 175, 49, 122, 12, - 13, 14, 15, 16, 189, 129, 130, 202, 132, 53, - 189, 36, 207, 137, 197, 139, 199, 202, 142, 42, - 42, 42, 207, 202, 0, 48, 48, 48, 207, 42, - 48, 49, 36, 49, 318, 42, 12, 13, 14, 15, - 16, 48, 237, 37, 38, 39, 40, 39, 40, 36, - 174, 175, 43, 177, 45, 49, 47, 252, 237, 41, - 121, 256, 123, 124, 41, 189, 37, 128, 42, 41, - 131, 256, 36, 134, 48, 136, 36, 256, 202, 37, - 38, 39, 40, 207, 277, 41, 37, 38, 39, 40, - 42, 49, 36, 154, 42, 41, 48, 298, 49, 41, - 48, 296, 37, 38, 39, 40, 152, 153, 309, 155, - 156, 296, 41, 237, 49, 49, 41, 296, 45, 37, - 38, 39, 40, 324, 325, 36, 36, 328, 46, 36, - 49, 45, 256, 18, 19, 20, 21, 36, 23, 24, - 25, 26, 43, 28, 29, 206, 31, 37, 38, 39, - 40, 275, 37, 38, 215, 216, 217, 218, 43, 220, - 221, 41, 49, 49, 43, 50, 51, 52, 53, 54, - 55, 56, 296, 58, 43, 46, 48, 238, 41, 49, - 48, 242, 49, 49, 17, 18, 19, 20, 21, 22, - 23, 24, 25, 26, 255, 28, 29, 49, 31, 32, - 33, 34, 35, 37, 38, 39, 40, 49, 18, 19, - 20, 21, 46, 23, 24, 25, 26, 50, 28, 29, - 49, 31, 55, 56, 49, 58, 44, 37, 38, 37, - 38, 39, 40, 43, 48, 45, 44, 41, 44, 46, - 50, 51, 52, 53, 54, 55, 56, 49, 58, 18, - 19, 20, 21, 36, 23, 24, 25, 26, 49, 28, - 29, 49, 31, 5, 6, 7, 8, 9, 37, 38, - 10, 22, 41, 40, 43, 16, 41, 126, 237, 51, - 202, 50, 51, 52, 53, 54, 55, 56, 238, 58, - 18, 19, 20, 21, 296, 23, 24, 25, 26, 252, - 28, 29, 30, 31, 32, 33, 34, 324, 328, 254, - 18, 19, 20, 21, 42, 23, 24, 25, 26, 27, - 28, 29, 50, 31, 51, 287, 273, 55, -1, 246, - 58, -1, 275, -1, 42, -1, -1, -1, 18, 19, - 20, 21, 50, 23, 24, 25, 26, 55, 28, 29, - 58, 31, -1, 18, 19, 20, 21, -1, 23, 24, - 25, 26, -1, 28, 29, 45, 31, -1, -1, -1, - 50, -1, -1, -1, -1, 55, -1, 42, 58, -1, - -1, 18, 19, 20, 21, 50, 23, 24, 25, 26, - 55, 28, 29, 58, 31, -1, 18, 19, 20, 21, - -1, 23, 24, 25, 26, 42, 28, 29, -1, 31, - -1, -1, -1, 50, -1, -1, -1, -1, 55, -1, - 42, 58, -1, -1, 18, 19, 20, 21, 50, 23, - 24, 25, 26, 55, 28, 29, 58, 31, -1, -1, - -1, -1, -1, -1, 18, 19, 20, 21, 42, 23, - 24, 25, 26, 27, 28, 29, 50, 31, -1, -1, - -1, 55, -1, -1, 58, -1, -1, 18, 19, 20, - 21, -1, 23, 24, 25, 26, 50, 28, 29, -1, - 31, 55, -1, -1, 58, 18, 19, 20, 21, -1, - 23, 24, 25, 26, -1, 28, 29, -1, 31, 50, - -1, -1, -1, -1, 55, -1, -1, 58, 18, 19, - 20, 21, 42, 23, 24, 25, 26, -1, 28, 29, - 53, 31, 55, -1, -1, 58, -1, 57, 58, 59, - 60, 61, 62, 63, 64, 57, 58, 59, 60, 61, - 62, 63, 64, -1, -1, 55, -1, -1, 58, 4, - 5, 6, 7, 8, 9, 10, 11 -}; - -/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing - symbol of state STATE-NUM. */ -static const yytype_uint8 yystos[] = -{ - 0, 57, 58, 59, 60, 61, 62, 63, 64, 66, - 67, 68, 70, 71, 72, 74, 75, 76, 0, 68, - 74, 71, 74, 4, 5, 6, 7, 8, 9, 10, - 11, 69, 73, 76, 73, 52, 136, 137, 136, 136, - 41, 41, 77, 70, 77, 12, 13, 14, 15, 16, - 78, 116, 117, 42, 42, 17, 18, 19, 20, 21, - 22, 23, 24, 25, 26, 28, 29, 31, 32, 33, - 34, 35, 50, 55, 56, 58, 79, 80, 81, 82, - 85, 88, 89, 93, 94, 95, 96, 97, 98, 112, - 113, 114, 115, 124, 133, 134, 52, 49, 49, 83, - 84, 134, 52, 135, 29, 53, 55, 86, 128, 132, - 133, 133, 132, 134, 132, 135, 135, 135, 25, 134, - 135, 45, 47, 36, 36, 49, 48, 49, 36, 41, - 41, 37, 41, 36, 36, 41, 36, 41, 41, 41, - 132, 49, 41, 18, 19, 21, 23, 24, 25, 26, - 29, 31, 37, 38, 43, 50, 51, 54, 114, 120, - 121, 124, 125, 131, 132, 133, 134, 135, 114, 120, - 120, 84, 120, 79, 87, 87, 120, 45, 50, 90, - 91, 92, 124, 134, 133, 120, 119, 120, 120, 87, - 41, 45, 108, 109, 110, 111, 134, 25, 28, 30, - 79, 95, 99, 100, 105, 112, 36, 87, 121, 124, - 121, 120, 121, 121, 43, 37, 38, 39, 40, 46, - 36, 45, 49, 49, 42, 79, 42, 29, 55, 114, - 122, 123, 126, 127, 128, 134, 42, 48, 36, 49, - 49, 42, 48, 49, 42, 110, 38, 53, 54, 129, - 130, 42, 48, 42, 48, 36, 41, 135, 42, 100, - 120, 42, 44, 118, 119, 120, 120, 120, 120, 120, - 120, 49, 49, 43, 46, 48, 46, 48, 49, 91, - 92, 120, 49, 120, 49, 42, 130, 48, 49, 109, - 49, 111, 41, 120, 27, 79, 101, 102, 41, 49, - 49, 49, 44, 46, 118, 123, 128, 129, 110, 41, - 42, 102, 106, 107, 133, 44, 46, 42, 41, 103, - 104, 133, 49, 42, 48, 36, 119, 42, 48, 49, - 107, 133, 42, 49, 104 -}; - -#define yyerrok (yyerrstatus = 0) -#define yyclearin (yychar = YYEMPTY) -#define YYEMPTY (-2) -#define YYEOF 0 - -#define YYACCEPT goto yyacceptlab -#define YYABORT goto yyabortlab -#define YYERROR goto yyerrorlab - - -/* Like YYERROR except do call yyerror. This remains here temporarily - to ease the transition to the new meaning of YYERROR, for GCC. - Once GCC version 2 has supplanted version 1, this can go. */ - -#define YYFAIL goto yyerrlab - -#define YYRECOVERING() (!!yyerrstatus) - -#define YYBACKUP(Token, Value) \ -do \ - if (yychar == YYEMPTY && yylen == 1) \ - { \ - yychar = (Token); \ - yylval = (Value); \ - yytoken = YYTRANSLATE (yychar); \ - YYPOPSTACK (1); \ - goto yybackup; \ - } \ - else \ - { \ - yyerror (YY_("syntax error: cannot back up")); \ - YYERROR; \ - } \ -while (YYID (0)) - - -#define YYTERROR 1 -#define YYERRCODE 256 - - -/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N]. - If N is 0, then set CURRENT to the empty location which ends - the previous symbol: RHS[0] (always defined). */ - -#define YYRHSLOC(Rhs, K) ((Rhs)[K]) -#ifndef YYLLOC_DEFAULT -# define YYLLOC_DEFAULT(Current, Rhs, N) \ - do \ - if (YYID (N)) \ - { \ - (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \ - (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \ - (Current).last_line = YYRHSLOC (Rhs, N).last_line; \ - (Current).last_column = YYRHSLOC (Rhs, N).last_column; \ - } \ - else \ - { \ - (Current).first_line = (Current).last_line = \ - YYRHSLOC (Rhs, 0).last_line; \ - (Current).first_column = (Current).last_column = \ - YYRHSLOC (Rhs, 0).last_column; \ - } \ - while (YYID (0)) -#endif - - -/* YY_LOCATION_PRINT -- Print the location on the stream. - This macro was not mandated originally: define only if we know - we won't break user code: when these are the locations we know. */ - -#ifndef YY_LOCATION_PRINT -# if YYLTYPE_IS_TRIVIAL -# define YY_LOCATION_PRINT(File, Loc) \ - fprintf (File, "%d.%d-%d.%d", \ - (Loc).first_line, (Loc).first_column, \ - (Loc).last_line, (Loc).last_column) -# else -# define YY_LOCATION_PRINT(File, Loc) ((void) 0) -# endif -#endif - - -/* YYLEX -- calling `yylex' with the right arguments. */ - -#ifdef YYLEX_PARAM -# define YYLEX yylex (YYLEX_PARAM) -#else -# define YYLEX yylex () -#endif - -/* Enable debugging if requested. */ -#if YYDEBUG - -# ifndef YYFPRINTF -# include <stdio.h> /* INFRINGES ON USER NAME SPACE */ -# define YYFPRINTF fprintf -# endif - -# define YYDPRINTF(Args) \ -do { \ - if (yydebug) \ - YYFPRINTF Args; \ -} while (YYID (0)) - -# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \ -do { \ - if (yydebug) \ - { \ - YYFPRINTF (stderr, "%s ", Title); \ - yy_symbol_print (stderr, \ - Type, Value); \ - YYFPRINTF (stderr, "\n"); \ - } \ -} while (YYID (0)) - - -/*--------------------------------. -| Print this symbol on YYOUTPUT. | -`--------------------------------*/ - -/*ARGSUSED*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static void -yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) -#else -static void -yy_symbol_value_print (yyoutput, yytype, yyvaluep) - FILE *yyoutput; - int yytype; - YYSTYPE const * const yyvaluep; -#endif -{ - if (!yyvaluep) - return; -# ifdef YYPRINT - if (yytype < YYNTOKENS) - YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep); -# else - YYUSE (yyoutput); -# endif - switch (yytype) - { - default: - break; - } -} - - -/*--------------------------------. -| Print this symbol on YYOUTPUT. | -`--------------------------------*/ - -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static void -yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep) -#else -static void -yy_symbol_print (yyoutput, yytype, yyvaluep) - FILE *yyoutput; - int yytype; - YYSTYPE const * const yyvaluep; -#endif -{ - if (yytype < YYNTOKENS) - YYFPRINTF (yyoutput, "token %s (", yytname[yytype]); - else - YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]); - - yy_symbol_value_print (yyoutput, yytype, yyvaluep); - YYFPRINTF (yyoutput, ")"); -} - -/*------------------------------------------------------------------. -| yy_stack_print -- Print the state stack from its BOTTOM up to its | -| TOP (included). | -`------------------------------------------------------------------*/ - -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static void -yy_stack_print (yytype_int16 *bottom, yytype_int16 *top) -#else -static void -yy_stack_print (bottom, top) - yytype_int16 *bottom; - yytype_int16 *top; -#endif -{ - YYFPRINTF (stderr, "Stack now"); - for (; bottom <= top; ++bottom) - YYFPRINTF (stderr, " %d", *bottom); - YYFPRINTF (stderr, "\n"); -} - -# define YY_STACK_PRINT(Bottom, Top) \ -do { \ - if (yydebug) \ - yy_stack_print ((Bottom), (Top)); \ -} while (YYID (0)) - - -/*------------------------------------------------. -| Report that the YYRULE is going to be reduced. | -`------------------------------------------------*/ - -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static void -yy_reduce_print (YYSTYPE *yyvsp, int yyrule) -#else -static void -yy_reduce_print (yyvsp, yyrule) - YYSTYPE *yyvsp; - int yyrule; -#endif -{ - int yynrhs = yyr2[yyrule]; - int yyi; - unsigned long int yylno = yyrline[yyrule]; - YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n", - yyrule - 1, yylno); - /* The symbols being reduced. */ - for (yyi = 0; yyi < yynrhs; yyi++) - { - fprintf (stderr, " $%d = ", yyi + 1); - yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi], - &(yyvsp[(yyi + 1) - (yynrhs)]) - ); - fprintf (stderr, "\n"); - } -} - -# define YY_REDUCE_PRINT(Rule) \ -do { \ - if (yydebug) \ - yy_reduce_print (yyvsp, Rule); \ -} while (YYID (0)) - -/* Nonzero means print parse trace. It is left uninitialized so that - multiple parsers can coexist. */ -int yydebug; -#else /* !YYDEBUG */ -# define YYDPRINTF(Args) -# define YY_SYMBOL_PRINT(Title, Type, Value, Location) -# define YY_STACK_PRINT(Bottom, Top) -# define YY_REDUCE_PRINT(Rule) -#endif /* !YYDEBUG */ - - -/* YYINITDEPTH -- initial size of the parser's stacks. */ -#ifndef YYINITDEPTH -# define YYINITDEPTH 200 -#endif - -/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only - if the built-in stack extension method is used). - - Do not make this value too large; the results are undefined if - YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH) - evaluated with infinite-precision integer arithmetic. */ - -#ifndef YYMAXDEPTH -# define YYMAXDEPTH 10000 -#endif - - - -#if YYERROR_VERBOSE - -# ifndef yystrlen -# if defined __GLIBC__ && defined _STRING_H -# define yystrlen strlen -# else -/* Return the length of YYSTR. */ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static YYSIZE_T -yystrlen (const char *yystr) -#else -static YYSIZE_T -yystrlen (yystr) - const char *yystr; -#endif -{ - YYSIZE_T yylen; - for (yylen = 0; yystr[yylen]; yylen++) - continue; - return yylen; -} -# endif -# endif - -# ifndef yystpcpy -# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE -# define yystpcpy stpcpy -# else -/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in - YYDEST. */ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static char * -yystpcpy (char *yydest, const char *yysrc) -#else -static char * -yystpcpy (yydest, yysrc) - char *yydest; - const char *yysrc; -#endif -{ - char *yyd = yydest; - const char *yys = yysrc; - - while ((*yyd++ = *yys++) != '\0') - continue; - - return yyd - 1; -} -# endif -# endif - -# ifndef yytnamerr -/* Copy to YYRES the contents of YYSTR after stripping away unnecessary - quotes and backslashes, so that it's suitable for yyerror. The - heuristic is that double-quoting is unnecessary unless the string - contains an apostrophe, a comma, or backslash (other than - backslash-backslash). YYSTR is taken from yytname. If YYRES is - null, do not copy; instead, return the length of what the result - would have been. */ -static YYSIZE_T -yytnamerr (char *yyres, const char *yystr) -{ - if (*yystr == '"') - { - YYSIZE_T yyn = 0; - char const *yyp = yystr; - - for (;;) - switch (*++yyp) - { - case '\'': - case ',': - goto do_not_strip_quotes; - - case '\\': - if (*++yyp != '\\') - goto do_not_strip_quotes; - /* Fall through. */ - default: - if (yyres) - yyres[yyn] = *yyp; - yyn++; - break; - - case '"': - if (yyres) - yyres[yyn] = '\0'; - return yyn; - } - do_not_strip_quotes: ; - } - - if (! yyres) - return yystrlen (yystr); - - return yystpcpy (yyres, yystr) - yyres; -} -# endif - -/* Copy into YYRESULT an error message about the unexpected token - YYCHAR while in state YYSTATE. Return the number of bytes copied, - including the terminating null byte. If YYRESULT is null, do not - copy anything; just return the number of bytes that would be - copied. As a special case, return 0 if an ordinary "syntax error" - message will do. Return YYSIZE_MAXIMUM if overflow occurs during - size calculation. */ -static YYSIZE_T -yysyntax_error (char *yyresult, int yystate, int yychar) -{ - int yyn = yypact[yystate]; - - if (! (YYPACT_NINF < yyn && yyn <= YYLAST)) - return 0; - else - { - int yytype = YYTRANSLATE (yychar); - YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]); - YYSIZE_T yysize = yysize0; - YYSIZE_T yysize1; - int yysize_overflow = 0; - enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 }; - char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM]; - int yyx; - -# if 0 - /* This is so xgettext sees the translatable formats that are - constructed on the fly. */ - YY_("syntax error, unexpected %s"); - YY_("syntax error, unexpected %s, expecting %s"); - YY_("syntax error, unexpected %s, expecting %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s"); - YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s"); -# endif - char *yyfmt; - char const *yyf; - static char const yyunexpected[] = "syntax error, unexpected %s"; - static char const yyexpecting[] = ", expecting %s"; - static char const yyor[] = " or %s"; - char yyformat[sizeof yyunexpected - + sizeof yyexpecting - 1 - + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2) - * (sizeof yyor - 1))]; - char const *yyprefix = yyexpecting; - - /* Start YYX at -YYN if negative to avoid negative indexes in - YYCHECK. */ - int yyxbegin = yyn < 0 ? -yyn : 0; - - /* Stay within bounds of both yycheck and yytname. */ - int yychecklim = YYLAST - yyn + 1; - int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS; - int yycount = 1; - - yyarg[0] = yytname[yytype]; - yyfmt = yystpcpy (yyformat, yyunexpected); - - for (yyx = yyxbegin; yyx < yyxend; ++yyx) - if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR) - { - if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM) - { - yycount = 1; - yysize = yysize0; - yyformat[sizeof yyunexpected - 1] = '\0'; - break; - } - yyarg[yycount++] = yytname[yyx]; - yysize1 = yysize + yytnamerr (0, yytname[yyx]); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - yyfmt = yystpcpy (yyfmt, yyprefix); - yyprefix = yyor; - } - - yyf = YY_(yyformat); - yysize1 = yysize + yystrlen (yyf); - yysize_overflow |= (yysize1 < yysize); - yysize = yysize1; - - if (yysize_overflow) - return YYSIZE_MAXIMUM; - - if (yyresult) - { - /* Avoid sprintf, as that infringes on the user's name space. - Don't have undefined behavior even if the translation - produced a string with the wrong number of "%s"s. */ - char *yyp = yyresult; - int yyi = 0; - while ((*yyp = *yyf) != '\0') - { - if (*yyp == '%' && yyf[1] == 's' && yyi < yycount) - { - yyp += yytnamerr (yyp, yyarg[yyi++]); - yyf += 2; - } - else - { - yyp++; - yyf++; - } - } - } - return yysize; - } -} -#endif /* YYERROR_VERBOSE */ - - -/*-----------------------------------------------. -| Release the memory associated to this symbol. | -`-----------------------------------------------*/ - -/*ARGSUSED*/ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -static void -yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep) -#else -static void -yydestruct (yymsg, yytype, yyvaluep) - const char *yymsg; - int yytype; - YYSTYPE *yyvaluep; -#endif -{ - YYUSE (yyvaluep); - - if (!yymsg) - yymsg = "Deleting"; - YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp); - - switch (yytype) - { - - default: - break; - } -} - - -/* Prevent warnings from -Wmissing-prototypes. */ - -#ifdef YYPARSE_PARAM -#if defined __STDC__ || defined __cplusplus -int yyparse (void *YYPARSE_PARAM); -#else -int yyparse (); -#endif -#else /* ! YYPARSE_PARAM */ -#if defined __STDC__ || defined __cplusplus -int yyparse (void); -#else -int yyparse (); -#endif -#endif /* ! YYPARSE_PARAM */ - - - -/* The look-ahead symbol. */ -int yychar; - -/* The semantic value of the look-ahead symbol. */ -YYSTYPE yylval; - -/* Number of syntax errors so far. */ -int yynerrs; - - - -/*----------. -| yyparse. | -`----------*/ - -#ifdef YYPARSE_PARAM -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -int -yyparse (void *YYPARSE_PARAM) -#else -int -yyparse (YYPARSE_PARAM) - void *YYPARSE_PARAM; -#endif -#else /* ! YYPARSE_PARAM */ -#if (defined __STDC__ || defined __C99__FUNC__ \ - || defined __cplusplus || defined _MSC_VER) -int -yyparse (void) -#else -int -yyparse () - -#endif -#endif -{ - - int yystate; - int yyn; - int yyresult; - /* Number of tokens to shift before error messages enabled. */ - int yyerrstatus; - /* Look-ahead token as an internal (translated) token number. */ - int yytoken = 0; -#if YYERROR_VERBOSE - /* Buffer for error messages, and its allocated size. */ - char yymsgbuf[128]; - char *yymsg = yymsgbuf; - YYSIZE_T yymsg_alloc = sizeof yymsgbuf; -#endif - - /* Three stacks and their tools: - `yyss': related to states, - `yyvs': related to semantic values, - `yyls': related to locations. - - Refer to the stacks thru separate pointers, to allow yyoverflow - to reallocate them elsewhere. */ - - /* The state stack. */ - yytype_int16 yyssa[YYINITDEPTH]; - yytype_int16 *yyss = yyssa; - yytype_int16 *yyssp; - - /* The semantic value stack. */ - YYSTYPE yyvsa[YYINITDEPTH]; - YYSTYPE *yyvs = yyvsa; - YYSTYPE *yyvsp; - - - -#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N)) - - YYSIZE_T yystacksize = YYINITDEPTH; - - /* The variables used to return semantic value and location from the - action routines. */ - YYSTYPE yyval; - - - /* The number of symbols on the RHS of the reduced rule. - Keep to zero when no symbol should be popped. */ - int yylen = 0; - - YYDPRINTF ((stderr, "Starting parse\n")); - - yystate = 0; - yyerrstatus = 0; - yynerrs = 0; - yychar = YYEMPTY; /* Cause a token to be read. */ - - /* Initialize stack pointers. - Waste one element of value and location stack - so that they stay on the same level as the state stack. - The wasted elements are never initialized. */ - - yyssp = yyss; - yyvsp = yyvs; - - goto yysetstate; - -/*------------------------------------------------------------. -| yynewstate -- Push a new state, which is found in yystate. | -`------------------------------------------------------------*/ - yynewstate: - /* In all cases, when you get here, the value and location stacks - have just been pushed. So pushing a state here evens the stacks. */ - yyssp++; - - yysetstate: - *yyssp = yystate; - - if (yyss + yystacksize - 1 <= yyssp) - { - /* Get the current used size of the three stacks, in elements. */ - YYSIZE_T yysize = yyssp - yyss + 1; - -#ifdef yyoverflow - { - /* Give user a chance to reallocate the stack. Use copies of - these so that the &'s don't force the real ones into - memory. */ - YYSTYPE *yyvs1 = yyvs; - yytype_int16 *yyss1 = yyss; - - - /* Each stack pointer address is followed by the size of the - data in use in that stack, in bytes. This used to be a - conditional around just the two extra args, but that might - be undefined if yyoverflow is a macro. */ - yyoverflow (YY_("memory exhausted"), - &yyss1, yysize * sizeof (*yyssp), - &yyvs1, yysize * sizeof (*yyvsp), - - &yystacksize); - - yyss = yyss1; - yyvs = yyvs1; - } -#else /* no yyoverflow */ -# ifndef YYSTACK_RELOCATE - goto yyexhaustedlab; -# else - /* Extend the stack our own way. */ - if (YYMAXDEPTH <= yystacksize) - goto yyexhaustedlab; - yystacksize *= 2; - if (YYMAXDEPTH < yystacksize) - yystacksize = YYMAXDEPTH; - - { - yytype_int16 *yyss1 = yyss; - union yyalloc *yyptr = - (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize)); - if (! yyptr) - goto yyexhaustedlab; - YYSTACK_RELOCATE (yyss); - YYSTACK_RELOCATE (yyvs); - -# undef YYSTACK_RELOCATE - if (yyss1 != yyssa) - YYSTACK_FREE (yyss1); - } -# endif -#endif /* no yyoverflow */ - - yyssp = yyss + yysize - 1; - yyvsp = yyvs + yysize - 1; - - - YYDPRINTF ((stderr, "Stack size increased to %lu\n", - (unsigned long int) yystacksize)); - - if (yyss + yystacksize - 1 <= yyssp) - YYABORT; - } - - YYDPRINTF ((stderr, "Entering state %d\n", yystate)); - - goto yybackup; - -/*-----------. -| yybackup. | -`-----------*/ -yybackup: - - /* Do appropriate processing given the current state. Read a - look-ahead token if we need one and don't already have one. */ - - /* First try to decide what to do without reference to look-ahead token. */ - yyn = yypact[yystate]; - if (yyn == YYPACT_NINF) - goto yydefault; - - /* Not known => get a look-ahead token if don't already have one. */ - - /* YYCHAR is either YYEMPTY or YYEOF or a valid look-ahead symbol. */ - if (yychar == YYEMPTY) - { - YYDPRINTF ((stderr, "Reading a token: ")); - yychar = YYLEX; - } - - if (yychar <= YYEOF) - { - yychar = yytoken = YYEOF; - YYDPRINTF ((stderr, "Now at end of input.\n")); - } - else - { - yytoken = YYTRANSLATE (yychar); - YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc); - } - - /* If the proper action on seeing token YYTOKEN is to reduce or to - detect an error, take that action. */ - yyn += yytoken; - if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken) - goto yydefault; - yyn = yytable[yyn]; - if (yyn <= 0) - { - if (yyn == 0 || yyn == YYTABLE_NINF) - goto yyerrlab; - yyn = -yyn; - goto yyreduce; - } - - if (yyn == YYFINAL) - YYACCEPT; - - /* Count tokens shifted since error; after three, turn off error - status. */ - if (yyerrstatus) - yyerrstatus--; - - /* Shift the look-ahead token. */ - YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc); - - /* Discard the shifted token unless it is eof. */ - if (yychar != YYEOF) - yychar = YYEMPTY; - - yystate = yyn; - *++yyvsp = yylval; - - goto yynewstate; - - -/*-----------------------------------------------------------. -| yydefault -- do the default action for the current state. | -`-----------------------------------------------------------*/ -yydefault: - yyn = yydefact[yystate]; - if (yyn == 0) - goto yyerrlab; - goto yyreduce; - - -/*-----------------------------. -| yyreduce -- Do a reduction. | -`-----------------------------*/ -yyreduce: - /* yyn is the number of a rule to reduce with. */ - yylen = yyr2[yyn]; - - /* If YYLEN is nonzero, implement the default value of the action: - `$$ = $1'. - - Otherwise, the following line sets YYVAL to garbage. - This behavior is undocumented and Bison - users should not rely upon it. Assigning to YYVAL - unconditionally makes the parser a bit smaller, and it avoids a - GCC warning that YYVAL may be used uninitialized. */ - yyval = yyvsp[1-yylen]; - - - YY_REDUCE_PRINT (yyn); - switch (yyn) - { - case 2: -#line 169 "xkbparse.y" - { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); } - break; - - case 3: -#line 171 "xkbparse.y" - { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); } - break; - - case 4: -#line 173 "xkbparse.y" - { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); } - break; - - case 5: -#line 177 "xkbparse.y" - { (yyval.file)= (XkbFile *)AppendStmt(&(yyvsp[(1) - (2)].file)->common,&(yyvsp[(2) - (2)].file)->common); } - break; - - case 6: -#line 179 "xkbparse.y" - { (yyval.file)= (yyvsp[(1) - (1)].file); } - break; - - case 7: -#line 185 "xkbparse.y" - { (yyval.file)= CreateXKBFile((yyvsp[(2) - (7)].uval),(yyvsp[(3) - (7)].str),&(yyvsp[(5) - (7)].file)->common,(yyvsp[(1) - (7)].uval)); } - break; - - case 8: -#line 188 "xkbparse.y" - { (yyval.uval)= XkmKeymapFile; } - break; - - case 9: -#line 189 "xkbparse.y" - { (yyval.uval)= XkmSemanticsFile; } - break; - - case 10: -#line 190 "xkbparse.y" - { (yyval.uval)= XkmLayoutFile; } - break; - - case 11: -#line 194 "xkbparse.y" - { (yyval.file)= (XkbFile *)AppendStmt(&(yyvsp[(1) - (2)].file)->common,&(yyvsp[(2) - (2)].file)->common); } - break; - - case 12: -#line 196 "xkbparse.y" - { (yyval.file)= (yyvsp[(1) - (1)].file); } - break; - - case 13: -#line 202 "xkbparse.y" - { (yyval.file)= CreateXKBFile((yyvsp[(2) - (7)].uval),(yyvsp[(3) - (7)].str),(yyvsp[(5) - (7)].any),(yyvsp[(1) - (7)].uval)); } - break; - - case 14: -#line 206 "xkbparse.y" - { (yyval.file)= CreateXKBFile((yyvsp[(2) - (4)].uval),(yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].any),(yyvsp[(1) - (4)].uval)); } - break; - - case 15: -#line 210 "xkbparse.y" - { (yyval.uval)= XkmKeyNamesIndex; } - break; - - case 16: -#line 211 "xkbparse.y" - { (yyval.uval)= XkmTypesIndex; } - break; - - case 17: -#line 212 "xkbparse.y" - { (yyval.uval)= XkmCompatMapIndex; } - break; - - case 18: -#line 213 "xkbparse.y" - { (yyval.uval)= XkmSymbolsIndex; } - break; - - case 19: -#line 214 "xkbparse.y" - { (yyval.uval)= XkmGeometryIndex; } - break; - - case 20: -#line 217 "xkbparse.y" - { (yyval.uval)= (yyvsp[(1) - (1)].uval); } - break; - - case 21: -#line 218 "xkbparse.y" - { (yyval.uval)= 0; } - break; - - case 22: -#line 221 "xkbparse.y" - { (yyval.uval)= (((yyvsp[(1) - (2)].uval))|((yyvsp[(2) - (2)].uval))); } - break; - - case 23: -#line 222 "xkbparse.y" - { (yyval.uval)= (yyvsp[(1) - (1)].uval); } - break; - - case 24: -#line 225 "xkbparse.y" - { (yyval.uval)= XkbLC_Partial; } - break; - - case 25: -#line 226 "xkbparse.y" - { (yyval.uval)= XkbLC_Default; } - break; - - case 26: -#line 227 "xkbparse.y" - { (yyval.uval)= XkbLC_Hidden; } - break; - - case 27: -#line 228 "xkbparse.y" - { (yyval.uval)= XkbLC_AlphanumericKeys; } - break; - - case 28: -#line 229 "xkbparse.y" - { (yyval.uval)= XkbLC_ModifierKeys; } - break; - - case 29: -#line 230 "xkbparse.y" - { (yyval.uval)= XkbLC_KeypadKeys; } - break; - - case 30: -#line 231 "xkbparse.y" - { (yyval.uval)= XkbLC_FunctionKeys; } - break; - - case 31: -#line 232 "xkbparse.y" - { (yyval.uval)= XkbLC_AlternateGroup; } - break; - - case 32: -#line 236 "xkbparse.y" - { (yyval.any)= AppendStmt((yyvsp[(1) - (2)].any),(yyvsp[(2) - (2)].any)); } - break; - - case 33: -#line 237 "xkbparse.y" - { (yyval.any)= NULL; } - break; - - case 34: -#line 241 "xkbparse.y" - { - (yyvsp[(2) - (2)].var)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].var)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].var)->common; - } - break; - - case 35: -#line 246 "xkbparse.y" - { - (yyvsp[(2) - (2)].vmod)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].vmod)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].vmod)->common; - } - break; - - case 36: -#line 251 "xkbparse.y" - { - (yyvsp[(2) - (2)].interp)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].interp)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].interp)->common; - } - break; - - case 37: -#line 256 "xkbparse.y" - { - (yyvsp[(2) - (2)].keyName)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyName)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].keyName)->common; - } - break; - - case 38: -#line 261 "xkbparse.y" - { - (yyvsp[(2) - (2)].keyAlias)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyAlias)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].keyAlias)->common; - } - break; - - case 39: -#line 266 "xkbparse.y" - { - (yyvsp[(2) - (2)].keyType)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyType)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].keyType)->common; - } - break; - - case 40: -#line 271 "xkbparse.y" - { - (yyvsp[(2) - (2)].syms)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].syms)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].syms)->common; - } - break; - - case 41: -#line 276 "xkbparse.y" - { - (yyvsp[(2) - (2)].modMask)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].modMask)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].modMask)->common; - } - break; - - case 42: -#line 281 "xkbparse.y" - { - (yyvsp[(2) - (2)].groupCompat)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].groupCompat)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].groupCompat)->common; - } - break; - - case 43: -#line 286 "xkbparse.y" - { - (yyvsp[(2) - (2)].ledMap)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].ledMap)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].ledMap)->common; - } - break; - - case 44: -#line 291 "xkbparse.y" - { - (yyvsp[(2) - (2)].ledName)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].ledName)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].ledName)->common; - } - break; - - case 45: -#line 296 "xkbparse.y" - { - (yyvsp[(2) - (2)].shape)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].shape)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].shape)->common; - } - break; - - case 46: -#line 301 "xkbparse.y" - { - (yyvsp[(2) - (2)].section)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].section)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].section)->common; - } - break; - - case 47: -#line 306 "xkbparse.y" - { - (yyvsp[(2) - (2)].doodad)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].doodad)->common,(yyvsp[(1) - (2)].uval)); - (yyval.any)= &(yyvsp[(2) - (2)].doodad)->common; - } - break; - - case 48: -#line 311 "xkbparse.y" - { - if ((yyvsp[(1) - (2)].uval)==MergeAltForm) { - yyerror("cannot use 'alternate' to include other maps"); - (yyval.any)= &IncludeCreate(scanStr,MergeDefault)->common; - } - else { - (yyval.any)= &IncludeCreate(scanStr,(yyvsp[(1) - (2)].uval))->common; - } - } - break; - - case 49: -#line 323 "xkbparse.y" - { (yyval.var)= VarCreate((yyvsp[(1) - (4)].expr),(yyvsp[(3) - (4)].expr)); } - break; - - case 50: -#line 325 "xkbparse.y" - { (yyval.var)= BoolVarCreate((yyvsp[(1) - (2)].sval),1); } - break; - - case 51: -#line 327 "xkbparse.y" - { (yyval.var)= BoolVarCreate((yyvsp[(2) - (3)].sval),0); } - break; - - case 52: -#line 331 "xkbparse.y" - { - KeycodeDef *def; - - def= KeycodeCreate((yyvsp[(1) - (4)].str),(yyvsp[(3) - (4)].expr)); - if ((yyvsp[(1) - (4)].str)) - free((yyvsp[(1) - (4)].str)); - (yyval.keyName)= def; - } - break; - - case 53: -#line 342 "xkbparse.y" - { - KeyAliasDef *def; - def= KeyAliasCreate((yyvsp[(2) - (5)].str),(yyvsp[(4) - (5)].str)); - if ((yyvsp[(2) - (5)].str)) free((yyvsp[(2) - (5)].str)); - if ((yyvsp[(4) - (5)].str)) free((yyvsp[(4) - (5)].str)); - (yyval.keyAlias)= def; - } - break; - - case 54: -#line 352 "xkbparse.y" - { (yyval.vmod)= (yyvsp[(2) - (3)].vmod); } - break; - - case 55: -#line 356 "xkbparse.y" - { (yyval.vmod)= (VModDef *)AppendStmt(&(yyvsp[(1) - (3)].vmod)->common,&(yyvsp[(3) - (3)].vmod)->common); } - break; - - case 56: -#line 358 "xkbparse.y" - { (yyval.vmod)= (yyvsp[(1) - (1)].vmod); } - break; - - case 57: -#line 362 "xkbparse.y" - { (yyval.vmod)= VModCreate((yyvsp[(1) - (1)].sval),NULL); } - break; - - case 58: -#line 364 "xkbparse.y" - { (yyval.vmod)= VModCreate((yyvsp[(1) - (3)].sval),(yyvsp[(3) - (3)].expr)); } - break; - - case 59: -#line 370 "xkbparse.y" - { - (yyvsp[(2) - (6)].interp)->def= (yyvsp[(4) - (6)].var); - (yyval.interp)= (yyvsp[(2) - (6)].interp); - } - break; - - case 60: -#line 377 "xkbparse.y" - { (yyval.interp)= InterpCreate((KeySym)(yyvsp[(1) - (3)].uval),(yyvsp[(3) - (3)].expr)); } - break; - - case 61: -#line 379 "xkbparse.y" - { (yyval.interp)= InterpCreate((KeySym)(yyvsp[(1) - (1)].uval),NULL); } - break; - - case 62: -#line 383 "xkbparse.y" - { (yyval.var)= (VarDef *)AppendStmt(&(yyvsp[(1) - (2)].var)->common,&(yyvsp[(2) - (2)].var)->common); } - break; - - case 63: -#line 385 "xkbparse.y" - { (yyval.var)= (yyvsp[(1) - (1)].var); } - break; - - case 64: -#line 391 "xkbparse.y" - { (yyval.keyType)= KeyTypeCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); } - break; - - case 65: -#line 397 "xkbparse.y" - { (yyval.syms)= SymbolsCreate((yyvsp[(2) - (6)].str),(ExprDef *)(yyvsp[(4) - (6)].var)); } - break; - - case 66: -#line 401 "xkbparse.y" - { (yyval.var)= (VarDef *)AppendStmt(&(yyvsp[(1) - (3)].var)->common,&(yyvsp[(3) - (3)].var)->common); } - break; - - case 67: -#line 403 "xkbparse.y" - { (yyval.var)= (yyvsp[(1) - (1)].var); } - break; - - case 68: -#line 404 "xkbparse.y" - { (yyval.var)= NULL; } - break; - - case 69: -#line 408 "xkbparse.y" - { (yyval.var)= VarCreate((yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 70: -#line 410 "xkbparse.y" - { (yyval.var)= VarCreate((yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 71: -#line 412 "xkbparse.y" - { (yyval.var)= BoolVarCreate((yyvsp[(1) - (1)].sval),1); } - break; - - case 72: -#line 414 "xkbparse.y" - { (yyval.var)= BoolVarCreate((yyvsp[(2) - (2)].sval),0); } - break; - - case 73: -#line 416 "xkbparse.y" - { (yyval.var)= VarCreate(NULL,(yyvsp[(1) - (1)].expr)); } - break; - - case 74: -#line 420 "xkbparse.y" - { (yyval.expr)= (yyvsp[(2) - (3)].expr); } - break; - - case 75: -#line 422 "xkbparse.y" - { (yyval.expr)= ExprCreateUnary(ExprActionList,TypeAction,(yyvsp[(2) - (3)].expr)); } - break; - - case 76: -#line 426 "xkbparse.y" - { (yyval.groupCompat)= GroupCompatCreate((yyvsp[(2) - (5)].ival),(yyvsp[(4) - (5)].expr)); } - break; - - case 77: -#line 430 "xkbparse.y" - { (yyval.modMask)= ModMapCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].expr)); } - break; - - case 78: -#line 434 "xkbparse.y" - { (yyval.ledMap)= IndicatorMapCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); } - break; - - case 79: -#line 438 "xkbparse.y" - { (yyval.ledName)= IndicatorNameCreate((yyvsp[(2) - (5)].ival),(yyvsp[(4) - (5)].expr),False); } - break; - - case 80: -#line 440 "xkbparse.y" - { (yyval.ledName)= IndicatorNameCreate((yyvsp[(3) - (6)].ival),(yyvsp[(5) - (6)].expr),True); } - break; - - case 81: -#line 444 "xkbparse.y" - { (yyval.shape)= ShapeDeclCreate((yyvsp[(2) - (6)].sval),(OutlineDef *)&(yyvsp[(4) - (6)].outline)->common); } - break; - - case 82: -#line 446 "xkbparse.y" - { - OutlineDef *outlines; - outlines= OutlineCreate(None,(yyvsp[(4) - (6)].expr)); - (yyval.shape)= ShapeDeclCreate((yyvsp[(2) - (6)].sval),outlines); - } - break; - - case 83: -#line 454 "xkbparse.y" - { (yyval.section)= SectionDeclCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].row)); } - break; - - case 84: -#line 458 "xkbparse.y" - { (yyval.row)=(RowDef *)AppendStmt(&(yyvsp[(1) - (2)].row)->common,&(yyvsp[(2) - (2)].row)->common);} - break; - - case 85: -#line 460 "xkbparse.y" - { (yyval.row)= (yyvsp[(1) - (1)].row); } - break; - - case 86: -#line 464 "xkbparse.y" - { (yyval.row)= RowDeclCreate((yyvsp[(3) - (5)].key)); } - break; - - case 87: -#line 466 "xkbparse.y" - { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].var); } - break; - - case 88: -#line 468 "xkbparse.y" - { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].doodad); } - break; - - case 89: -#line 470 "xkbparse.y" - { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].ledMap); } - break; - - case 90: -#line 472 "xkbparse.y" - { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].overlay); } - break; - - case 91: -#line 476 "xkbparse.y" - { (yyval.key)=(KeyDef *)AppendStmt(&(yyvsp[(1) - (2)].key)->common,&(yyvsp[(2) - (2)].key)->common);} - break; - - case 92: -#line 478 "xkbparse.y" - { (yyval.key)= (yyvsp[(1) - (1)].key); } - break; - - case 93: -#line 482 "xkbparse.y" - { (yyval.key)= (yyvsp[(3) - (5)].key); } - break; - - case 94: -#line 484 "xkbparse.y" - { (yyval.key)= (KeyDef *)(yyvsp[(1) - (1)].var); } - break; - - case 95: -#line 488 "xkbparse.y" - { (yyval.key)=(KeyDef *)AppendStmt(&(yyvsp[(1) - (3)].key)->common,&(yyvsp[(3) - (3)].key)->common);} - break; - - case 96: -#line 490 "xkbparse.y" - { (yyval.key)= (yyvsp[(1) - (1)].key); } - break; - - case 97: -#line 494 "xkbparse.y" - { (yyval.key)= KeyDeclCreate((yyvsp[(1) - (1)].str),NULL); } - break; - - case 98: -#line 496 "xkbparse.y" - { (yyval.key)= KeyDeclCreate(NULL,(yyvsp[(2) - (3)].expr)); } - break; - - case 99: -#line 500 "xkbparse.y" - { (yyval.overlay)= OverlayDeclCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].olKey)); } - break; - - case 100: -#line 504 "xkbparse.y" - { - (yyval.olKey)= (OverlayKeyDef *) - AppendStmt(&(yyvsp[(1) - (3)].olKey)->common,&(yyvsp[(3) - (3)].olKey)->common); - } - break; - - case 101: -#line 509 "xkbparse.y" - { (yyval.olKey)= (yyvsp[(1) - (1)].olKey); } - break; - - case 102: -#line 513 "xkbparse.y" - { (yyval.olKey)= OverlayKeyCreate((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str)); } - break; - - case 103: -#line 517 "xkbparse.y" - { (yyval.outline)=(OutlineDef *)AppendStmt(&(yyvsp[(1) - (3)].outline)->common,&(yyvsp[(3) - (3)].outline)->common);} - break; - - case 104: -#line 519 "xkbparse.y" - { (yyval.outline)= (yyvsp[(1) - (1)].outline); } - break; - - case 105: -#line 523 "xkbparse.y" - { (yyval.outline)= OutlineCreate(None,(yyvsp[(2) - (3)].expr)); } - break; - - case 106: -#line 525 "xkbparse.y" - { (yyval.outline)= OutlineCreate((yyvsp[(1) - (5)].sval),(yyvsp[(4) - (5)].expr)); } - break; - - case 107: -#line 527 "xkbparse.y" - { (yyval.outline)= OutlineCreate((yyvsp[(1) - (3)].sval),(yyvsp[(3) - (3)].expr)); } - break; - - case 108: -#line 531 "xkbparse.y" - { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); } - break; - - case 109: -#line 533 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 110: -#line 537 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprCoord,TypeUnknown); - expr->value.coord.x= (yyvsp[(2) - (5)].ival); - expr->value.coord.y= (yyvsp[(4) - (5)].ival); - (yyval.expr)= expr; - } - break; - - case 111: -#line 547 "xkbparse.y" - { (yyval.doodad)= DoodadCreate((yyvsp[(1) - (6)].uval),(yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); } - break; - - case 112: -#line 550 "xkbparse.y" - { (yyval.uval)= XkbTextDoodad; } - break; - - case 113: -#line 551 "xkbparse.y" - { (yyval.uval)= XkbOutlineDoodad; } - break; - - case 114: -#line 552 "xkbparse.y" - { (yyval.uval)= XkbSolidDoodad; } - break; - - case 115: -#line 553 "xkbparse.y" - { (yyval.uval)= XkbLogoDoodad; } - break; - - case 116: -#line 556 "xkbparse.y" - { (yyval.sval)= (yyvsp[(1) - (1)].sval); } - break; - - case 117: -#line 557 "xkbparse.y" - { (yyval.sval)= (yyvsp[(1) - (1)].sval); } - break; - - case 118: -#line 561 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"action",False); } - break; - - case 119: -#line 563 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"interpret",False); } - break; - - case 120: -#line 565 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"type",False); } - break; - - case 121: -#line 567 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"key",False); } - break; - - case 122: -#line 569 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"group",False); } - break; - - case 123: -#line 571 "xkbparse.y" - {(yyval.sval)=XkbInternAtom(NULL,"modifier_map",False);} - break; - - case 124: -#line 573 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"indicator",False); } - break; - - case 125: -#line 575 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"shape",False); } - break; - - case 126: -#line 577 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"row",False); } - break; - - case 127: -#line 579 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"section",False); } - break; - - case 128: -#line 581 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"text",False); } - break; - - case 129: -#line 584 "xkbparse.y" - { (yyval.uval)= (yyvsp[(1) - (1)].uval); } - break; - - case 130: -#line 585 "xkbparse.y" - { (yyval.uval)= MergeDefault; } - break; - - case 131: -#line 588 "xkbparse.y" - { (yyval.uval)= MergeDefault; } - break; - - case 132: -#line 589 "xkbparse.y" - { (yyval.uval)= MergeAugment; } - break; - - case 133: -#line 590 "xkbparse.y" - { (yyval.uval)= MergeOverride; } - break; - - case 134: -#line 591 "xkbparse.y" - { (yyval.uval)= MergeReplace; } - break; - - case 135: -#line 592 "xkbparse.y" - { (yyval.uval)= MergeAltForm; } - break; - - case 136: -#line 595 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 137: -#line 596 "xkbparse.y" - { (yyval.expr)= NULL; } - break; - - case 138: -#line 600 "xkbparse.y" - { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); } - break; - - case 139: -#line 602 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 140: -#line 606 "xkbparse.y" - { (yyval.expr)= ExprCreateBinary(OpDivide,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 141: -#line 608 "xkbparse.y" - { (yyval.expr)= ExprCreateBinary(OpAdd,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 142: -#line 610 "xkbparse.y" - { (yyval.expr)= ExprCreateBinary(OpSubtract,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 143: -#line 612 "xkbparse.y" - { (yyval.expr)= ExprCreateBinary(OpMultiply,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 144: -#line 614 "xkbparse.y" - { (yyval.expr)= ExprCreateBinary(OpAssign,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); } - break; - - case 145: -#line 616 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 146: -#line 620 "xkbparse.y" - { (yyval.expr)= ExprCreateUnary(OpNegate,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); } - break; - - case 147: -#line 622 "xkbparse.y" - { (yyval.expr)= ExprCreateUnary(OpUnaryPlus,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); } - break; - - case 148: -#line 624 "xkbparse.y" - { (yyval.expr)= ExprCreateUnary(OpNot,TypeBoolean,(yyvsp[(2) - (2)].expr)); } - break; - - case 149: -#line 626 "xkbparse.y" - { (yyval.expr)= ExprCreateUnary(OpInvert,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); } - break; - - case 150: -#line 628 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 151: -#line 630 "xkbparse.y" - { (yyval.expr)= ActionCreate((yyvsp[(1) - (4)].sval),(yyvsp[(3) - (4)].expr)); } - break; - - case 152: -#line 632 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 153: -#line 634 "xkbparse.y" - { (yyval.expr)= (yyvsp[(2) - (3)].expr); } - break; - - case 154: -#line 638 "xkbparse.y" - { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); } - break; - - case 155: -#line 640 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 156: -#line 644 "xkbparse.y" - { (yyval.expr)= ActionCreate((yyvsp[(1) - (4)].sval),(yyvsp[(3) - (4)].expr)); } - break; - - case 157: -#line 648 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprIdent,TypeUnknown); - expr->value.str= (yyvsp[(1) - (1)].sval); - (yyval.expr)= expr; - } - break; - - case 158: -#line 655 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprFieldRef,TypeUnknown); - expr->value.field.element= (yyvsp[(1) - (3)].sval); - expr->value.field.field= (yyvsp[(3) - (3)].sval); - (yyval.expr)= expr; - } - break; - - case 159: -#line 663 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprArrayRef,TypeUnknown); - expr->value.array.element= None; - expr->value.array.field= (yyvsp[(1) - (4)].sval); - expr->value.array.entry= (yyvsp[(3) - (4)].expr); - (yyval.expr)= expr; - } - break; - - case 160: -#line 672 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprArrayRef,TypeUnknown); - expr->value.array.element= (yyvsp[(1) - (6)].sval); - expr->value.array.field= (yyvsp[(3) - (6)].sval); - expr->value.array.entry= (yyvsp[(5) - (6)].expr); - (yyval.expr)= expr; - } - break; - - case 161: -#line 683 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprValue,TypeString); - expr->value.str= (yyvsp[(1) - (1)].sval); - (yyval.expr)= expr; - } - break; - - case 162: -#line 690 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprValue,TypeInt); - expr->value.ival= (yyvsp[(1) - (1)].ival); - (yyval.expr)= expr; - } - break; - - case 163: -#line 697 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprValue,TypeFloat); - expr->value.ival= (yyvsp[(1) - (1)].ival); - (yyval.expr)= expr; - } - break; - - case 164: -#line 704 "xkbparse.y" - { - ExprDef *expr; - expr= ExprCreate(ExprValue,TypeKeyName); - memset(expr->value.keyName,0,5); - strncpy(expr->value.keyName,(yyvsp[(1) - (1)].str),4); - free((yyvsp[(1) - (1)].str)); - (yyval.expr)= expr; - } - break; - - case 165: -#line 714 "xkbparse.y" - { (yyval.expr)= (yyvsp[(1) - (1)].expr); } - break; - - case 166: -#line 715 "xkbparse.y" - { (yyval.expr)= NULL; } - break; - - case 167: -#line 719 "xkbparse.y" - { (yyval.expr)= AppendKeysymList((yyvsp[(1) - (3)].expr),(KeySym)(yyvsp[(3) - (3)].uval)); } - break; - - case 168: -#line 721 "xkbparse.y" - { (yyval.expr)= CreateKeysymList((KeySym)(yyvsp[(1) - (1)].uval)); } - break; - - case 169: -#line 725 "xkbparse.y" - { - KeySym sym; - if (LookupKeysym(scanStr,&sym)) - (yyval.uval)= sym; - else { - char buf[120]; - snprintf(buf, sizeof(buf), - "expected keysym, got %s", - uStringText(scanStr)); - yyerror(buf); - yynerrs++; - (yyval.uval)= NoSymbol; - } - } - break; - - case 170: -#line 740 "xkbparse.y" - { - (yyval.uval)= XK_section; - } - break; - - case 171: -#line 744 "xkbparse.y" - { - if ((yyvsp[(1) - (1)].ival)<10) (yyval.uval)= (yyvsp[(1) - (1)].ival)+'0'; /* XK_0 .. XK_9 */ - else (yyval.uval)= (yyvsp[(1) - (1)].ival); - } - break; - - case 172: -#line 750 "xkbparse.y" - { (yyval.ival)= -(yyvsp[(2) - (2)].ival); } - break; - - case 173: -#line 751 "xkbparse.y" - { (yyval.ival)= (yyvsp[(1) - (1)].ival); } - break; - - case 174: -#line 754 "xkbparse.y" - { (yyval.ival)= scanInt; } - break; - - case 175: -#line 755 "xkbparse.y" - { (yyval.ival)= scanInt*XkbGeomPtsPerMM; } - break; - - case 176: -#line 758 "xkbparse.y" - { (yyval.ival)= scanInt; } - break; - - case 177: -#line 761 "xkbparse.y" - { (yyval.ival)= scanInt; } - break; - - case 178: -#line 764 "xkbparse.y" - { (yyval.str)= scanStr; scanStr= NULL; } - break; - - case 179: -#line 767 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,scanStr,False); } - break; - - case 180: -#line 768 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,"default",False); } - break; - - case 181: -#line 771 "xkbparse.y" - { (yyval.sval)= XkbInternAtom(NULL,scanStr,False); } - break; - - case 182: -#line 774 "xkbparse.y" - { (yyval.str)= (yyvsp[(1) - (1)].str); } - break; - - case 183: -#line 775 "xkbparse.y" - { (yyval.str)= NULL; } - break; - - case 184: -#line 778 "xkbparse.y" - { (yyval.str)= scanStr; scanStr= NULL; } - break; - - -/* Line 1267 of yacc.c. */ -#line 2931 "xkbparse.c" - default: break; - } - YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc); - - YYPOPSTACK (yylen); - yylen = 0; - YY_STACK_PRINT (yyss, yyssp); - - *++yyvsp = yyval; - - - /* Now `shift' the result of the reduction. Determine what state - that goes to, based on the state we popped back to and the rule - number reduced by. */ - - yyn = yyr1[yyn]; - - yystate = yypgoto[yyn - YYNTOKENS] + *yyssp; - if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp) - yystate = yytable[yystate]; - else - yystate = yydefgoto[yyn - YYNTOKENS]; - - goto yynewstate; - - -/*------------------------------------. -| yyerrlab -- here on detecting error | -`------------------------------------*/ -yyerrlab: - /* If not already recovering from an error, report this error. */ - if (!yyerrstatus) - { - ++yynerrs; -#if ! YYERROR_VERBOSE - yyerror (YY_("syntax error")); -#else - { - YYSIZE_T yysize = yysyntax_error (0, yystate, yychar); - if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM) - { - YYSIZE_T yyalloc = 2 * yysize; - if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM)) - yyalloc = YYSTACK_ALLOC_MAXIMUM; - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); - yymsg = (char *) YYSTACK_ALLOC (yyalloc); - if (yymsg) - yymsg_alloc = yyalloc; - else - { - yymsg = yymsgbuf; - yymsg_alloc = sizeof yymsgbuf; - } - } - - if (0 < yysize && yysize <= yymsg_alloc) - { - (void) yysyntax_error (yymsg, yystate, yychar); - yyerror (yymsg); - } - else - { - yyerror (YY_("syntax error")); - if (yysize != 0) - goto yyexhaustedlab; - } - } -#endif - } - - - - if (yyerrstatus == 3) - { - /* If just tried and failed to reuse look-ahead token after an - error, discard it. */ - - if (yychar <= YYEOF) - { - /* Return failure if at end of input. */ - if (yychar == YYEOF) - YYABORT; - } - else - { - yydestruct ("Error: discarding", - yytoken, &yylval); - yychar = YYEMPTY; - } - } - - /* Else will try to reuse look-ahead token after shifting the error - token. */ - goto yyerrlab1; - - -/*---------------------------------------------------. -| yyerrorlab -- error raised explicitly by YYERROR. | -`---------------------------------------------------*/ -yyerrorlab: - - /* Pacify compilers like GCC when the user code never invokes - YYERROR and the label yyerrorlab therefore never appears in user - code. */ - if (/*CONSTCOND*/ 0) - goto yyerrorlab; - - /* Do not reclaim the symbols of the rule which action triggered - this YYERROR. */ - YYPOPSTACK (yylen); - yylen = 0; - YY_STACK_PRINT (yyss, yyssp); - yystate = *yyssp; - goto yyerrlab1; - - -/*-------------------------------------------------------------. -| yyerrlab1 -- common code for both syntax error and YYERROR. | -`-------------------------------------------------------------*/ -yyerrlab1: - yyerrstatus = 3; /* Each real token shifted decrements this. */ - - for (;;) - { - yyn = yypact[yystate]; - if (yyn != YYPACT_NINF) - { - yyn += YYTERROR; - if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR) - { - yyn = yytable[yyn]; - if (0 < yyn) - break; - } - } - - /* Pop the current state because it cannot handle the error token. */ - if (yyssp == yyss) - YYABORT; - - - yydestruct ("Error: popping", - yystos[yystate], yyvsp); - YYPOPSTACK (1); - yystate = *yyssp; - YY_STACK_PRINT (yyss, yyssp); - } - - if (yyn == YYFINAL) - YYACCEPT; - - *++yyvsp = yylval; - - - /* Shift the error token. */ - YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp); - - yystate = yyn; - goto yynewstate; - - -/*-------------------------------------. -| yyacceptlab -- YYACCEPT comes here. | -`-------------------------------------*/ -yyacceptlab: - yyresult = 0; - goto yyreturn; - -/*-----------------------------------. -| yyabortlab -- YYABORT comes here. | -`-----------------------------------*/ -yyabortlab: - yyresult = 1; - goto yyreturn; - -#ifndef yyoverflow -/*-------------------------------------------------. -| yyexhaustedlab -- memory exhaustion comes here. | -`-------------------------------------------------*/ -yyexhaustedlab: - yyerror (YY_("memory exhausted")); - yyresult = 2; - /* Fall through. */ -#endif - -yyreturn: - if (yychar != YYEOF && yychar != YYEMPTY) - yydestruct ("Cleanup: discarding lookahead", - yytoken, &yylval); - /* Do not reclaim the symbols of the rule which action triggered - this YYABORT or YYACCEPT. */ - YYPOPSTACK (yylen); - YY_STACK_PRINT (yyss, yyssp); - while (yyssp != yyss) - { - yydestruct ("Cleanup: popping", - yystos[*yyssp], yyvsp); - YYPOPSTACK (1); - } -#ifndef yyoverflow - if (yyss != yyssa) - YYSTACK_FREE (yyss); -#endif -#if YYERROR_VERBOSE - if (yymsg != yymsgbuf) - YYSTACK_FREE (yymsg); -#endif - /* Make sure YYID is used. */ - return YYID (yyresult); -} - - -#line 780 "xkbparse.y" - -void -yyerror(const char *s) -{ - if (warningLevel>0) { - (void)fprintf(stderr,"%s: line %d of %s\n",s,lineNum, - (scanFile?scanFile:"(unknown)")); - if ((scanStr)&&(warningLevel>3)) - (void)fprintf(stderr,"last scanned symbol is: %s\n",scanStr); - } - return; -} - - -int -yywrap(void) -{ - return 1; -} - - +
+/* A Bison parser, made by GNU Bison 2.4.1. */
+
+/* Skeleton implementation for Bison's Yacc-like parsers in C
+
+ Copyright (C) 1984, 1989, 1990, 2000, 2001, 2002, 2003, 2004, 2005, 2006
+ Free Software Foundation, Inc.
+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program. If not, see <http://www.gnu.org/licenses/>. */
+
+/* As a special exception, you may create a larger work that contains
+ part or all of the Bison parser skeleton and distribute that work
+ under terms of your choice, so long as that work isn't itself a
+ parser generator using the skeleton or a modified version thereof
+ as a parser skeleton. Alternatively, if you modify or redistribute
+ the parser skeleton itself, you may (at your option) remove this
+ special exception, which will cause the skeleton and the resulting
+ Bison output files to be licensed under the GNU General Public
+ License without this special exception.
+
+ This special exception was added by the Free Software Foundation in
+ version 2.2 of Bison. */
+
+/* C LALR(1) parser skeleton written by Richard Stallman, by
+ simplifying the original so-called "semantic" parser. */
+
+/* All symbols defined below should begin with yy or YY, to avoid
+ infringing on user name space. This should be done even for local
+ variables, as they might otherwise be expanded by user macros.
+ There are some unavoidable exceptions within include files to
+ define necessary library symbols; they are noted "INFRINGES ON
+ USER NAME SPACE" below. */
+
+/* Identify Bison output. */
+#define YYBISON 1
+
+/* Bison version. */
+#define YYBISON_VERSION "2.4.1"
+
+/* Skeleton name. */
+#define YYSKELETON_NAME "yacc.c"
+
+/* Pure parsers. */
+#define YYPURE 0
+
+/* Push parsers. */
+#define YYPUSH 0
+
+/* Pull parsers. */
+#define YYPULL 1
+
+/* Using locations. */
+#define YYLSP_NEEDED 0
+
+
+
+/* Copy the first part of user declarations. */
+
+/* Line 189 of yacc.c */
+#line 91 "xkbparse.y"
+
+#ifdef DEBUG
+#define YYDEBUG 1
+#endif
+#define DEBUG_VAR parseDebug
+#include "parseutils.h"
+#include <X11/keysym.h>
+#include <X11/extensions/XKBgeom.h>
+#include <stdlib.h>
+
+unsigned int parseDebug;
+
+
+
+/* Line 189 of yacc.c */
+#line 88 "xkbparse.c"
+
+/* Enabling traces. */
+#ifndef YYDEBUG
+# define YYDEBUG 0
+#endif
+
+/* Enabling verbose error messages. */
+#ifdef YYERROR_VERBOSE
+# undef YYERROR_VERBOSE
+# define YYERROR_VERBOSE 1
+#else
+# define YYERROR_VERBOSE 0
+#endif
+
+/* Enabling the token table. */
+#ifndef YYTOKEN_TABLE
+# define YYTOKEN_TABLE 0
+#endif
+
+
+/* Tokens. */
+#ifndef YYTOKENTYPE
+# define YYTOKENTYPE
+ /* Put the tokens into the symbol table, so that GDB and other debuggers
+ know about them. */
+ enum yytokentype {
+ END_OF_FILE = 0,
+ ERROR_TOK = 255,
+ XKB_KEYMAP = 1,
+ XKB_KEYCODES = 2,
+ XKB_TYPES = 3,
+ XKB_SYMBOLS = 4,
+ XKB_COMPATMAP = 5,
+ XKB_GEOMETRY = 6,
+ XKB_SEMANTICS = 7,
+ XKB_LAYOUT = 8,
+ INCLUDE = 10,
+ OVERRIDE = 11,
+ AUGMENT = 12,
+ REPLACE = 13,
+ ALTERNATE = 14,
+ VIRTUAL_MODS = 20,
+ TYPE = 21,
+ INTERPRET = 22,
+ ACTION_TOK = 23,
+ KEY = 24,
+ ALIAS = 25,
+ GROUP = 26,
+ MODIFIER_MAP = 27,
+ INDICATOR = 28,
+ SHAPE = 29,
+ KEYS = 30,
+ ROW = 31,
+ SECTION = 32,
+ OVERLAY = 33,
+ TEXT = 34,
+ OUTLINE = 35,
+ SOLID = 36,
+ LOGO = 37,
+ VIRTUAL = 38,
+ EQUALS = 40,
+ PLUS = 41,
+ MINUS = 42,
+ DIVIDE = 43,
+ TIMES = 44,
+ OBRACE = 45,
+ CBRACE = 46,
+ OPAREN = 47,
+ CPAREN = 48,
+ OBRACKET = 49,
+ CBRACKET = 50,
+ DOT = 51,
+ COMMA = 52,
+ SEMI = 53,
+ EXCLAM = 54,
+ INVERT = 55,
+ STRING = 60,
+ INTEGER = 61,
+ FLOAT = 62,
+ IDENT = 63,
+ KEYNAME = 64,
+ PARTIAL = 70,
+ DEFAULT = 71,
+ HIDDEN = 72,
+ ALPHANUMERIC_KEYS = 73,
+ MODIFIER_KEYS = 74,
+ KEYPAD_KEYS = 75,
+ FUNCTION_KEYS = 76,
+ ALTERNATE_GROUP = 77
+ };
+#endif
+/* Tokens. */
+#define END_OF_FILE 0
+#define ERROR_TOK 255
+#define XKB_KEYMAP 1
+#define XKB_KEYCODES 2
+#define XKB_TYPES 3
+#define XKB_SYMBOLS 4
+#define XKB_COMPATMAP 5
+#define XKB_GEOMETRY 6
+#define XKB_SEMANTICS 7
+#define XKB_LAYOUT 8
+#define INCLUDE 10
+#define OVERRIDE 11
+#define AUGMENT 12
+#define REPLACE 13
+#define ALTERNATE 14
+#define VIRTUAL_MODS 20
+#define TYPE 21
+#define INTERPRET 22
+#define ACTION_TOK 23
+#define KEY 24
+#define ALIAS 25
+#define GROUP 26
+#define MODIFIER_MAP 27
+#define INDICATOR 28
+#define SHAPE 29
+#define KEYS 30
+#define ROW 31
+#define SECTION 32
+#define OVERLAY 33
+#define TEXT 34
+#define OUTLINE 35
+#define SOLID 36
+#define LOGO 37
+#define VIRTUAL 38
+#define EQUALS 40
+#define PLUS 41
+#define MINUS 42
+#define DIVIDE 43
+#define TIMES 44
+#define OBRACE 45
+#define CBRACE 46
+#define OPAREN 47
+#define CPAREN 48
+#define OBRACKET 49
+#define CBRACKET 50
+#define DOT 51
+#define COMMA 52
+#define SEMI 53
+#define EXCLAM 54
+#define INVERT 55
+#define STRING 60
+#define INTEGER 61
+#define FLOAT 62
+#define IDENT 63
+#define KEYNAME 64
+#define PARTIAL 70
+#define DEFAULT 71
+#define HIDDEN 72
+#define ALPHANUMERIC_KEYS 73
+#define MODIFIER_KEYS 74
+#define KEYPAD_KEYS 75
+#define FUNCTION_KEYS 76
+#define ALTERNATE_GROUP 77
+
+
+
+
+#if ! defined YYSTYPE && ! defined YYSTYPE_IS_DECLARED
+typedef union YYSTYPE
+{
+
+/* Line 214 of yacc.c */
+#line 110 "xkbparse.y"
+
+ int ival;
+ unsigned uval;
+ char *str;
+ Atom sval;
+ ParseCommon *any;
+ ExprDef *expr;
+ VarDef *var;
+ VModDef *vmod;
+ InterpDef *interp;
+ KeyTypeDef *keyType;
+ SymbolsDef *syms;
+ ModMapDef *modMask;
+ GroupCompatDef *groupCompat;
+ IndicatorMapDef *ledMap;
+ IndicatorNameDef *ledName;
+ KeycodeDef *keyName;
+ KeyAliasDef *keyAlias;
+ ShapeDef *shape;
+ SectionDef *section;
+ RowDef *row;
+ KeyDef *key;
+ OverlayDef *overlay;
+ OverlayKeyDef *olKey;
+ OutlineDef *outline;
+ DoodadDef *doodad;
+ XkbFile *file;
+
+
+
+/* Line 214 of yacc.c */
+#line 285 "xkbparse.c"
+} YYSTYPE;
+# define YYSTYPE_IS_TRIVIAL 1
+# define yystype YYSTYPE /* obsolescent; will be withdrawn */
+# define YYSTYPE_IS_DECLARED 1
+#endif
+
+
+/* Copy the second part of user declarations. */
+
+
+/* Line 264 of yacc.c */
+#line 297 "xkbparse.c"
+
+#ifdef short
+# undef short
+#endif
+
+#ifdef YYTYPE_UINT8
+typedef YYTYPE_UINT8 yytype_uint8;
+#else
+typedef unsigned char yytype_uint8;
+#endif
+
+#ifdef YYTYPE_INT8
+typedef YYTYPE_INT8 yytype_int8;
+#elif (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+typedef signed char yytype_int8;
+#else
+typedef short int yytype_int8;
+#endif
+
+#ifdef YYTYPE_UINT16
+typedef YYTYPE_UINT16 yytype_uint16;
+#else
+typedef unsigned short int yytype_uint16;
+#endif
+
+#ifdef YYTYPE_INT16
+typedef YYTYPE_INT16 yytype_int16;
+#else
+typedef short int yytype_int16;
+#endif
+
+#ifndef YYSIZE_T
+# ifdef __SIZE_TYPE__
+# define YYSIZE_T __SIZE_TYPE__
+# elif defined size_t
+# define YYSIZE_T size_t
+# elif ! defined YYSIZE_T && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stddef.h> /* INFRINGES ON USER NAME SPACE */
+# define YYSIZE_T size_t
+# else
+# define YYSIZE_T unsigned int
+# endif
+#endif
+
+#define YYSIZE_MAXIMUM ((YYSIZE_T) -1)
+
+#ifndef YY_
+# if YYENABLE_NLS
+# if ENABLE_NLS
+# include <libintl.h> /* INFRINGES ON USER NAME SPACE */
+# define YY_(msgid) dgettext ("bison-runtime", msgid)
+# endif
+# endif
+# ifndef YY_
+# define YY_(msgid) msgid
+# endif
+#endif
+
+/* Suppress unused-variable warnings by "using" E. */
+#if ! defined lint || defined __GNUC__
+# define YYUSE(e) ((void) (e))
+#else
+# define YYUSE(e) /* empty */
+#endif
+
+/* Identity function, used to suppress warnings about constant conditions. */
+#ifndef lint
+# define YYID(n) (n)
+#else
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static int
+YYID (int yyi)
+#else
+static int
+YYID (yyi)
+ int yyi;
+#endif
+{
+ return yyi;
+}
+#endif
+
+#if ! defined yyoverflow || YYERROR_VERBOSE
+
+/* The parser invokes alloca or malloc; define the necessary symbols. */
+
+# ifdef YYSTACK_USE_ALLOCA
+# if YYSTACK_USE_ALLOCA
+# ifdef __GNUC__
+# define YYSTACK_ALLOC __builtin_alloca
+# elif defined __BUILTIN_VA_ARG_INCR
+# include <alloca.h> /* INFRINGES ON USER NAME SPACE */
+# elif defined _AIX
+# define YYSTACK_ALLOC __alloca
+# elif defined _MSC_VER
+# include <malloc.h> /* INFRINGES ON USER NAME SPACE */
+# define alloca _alloca
+# else
+# define YYSTACK_ALLOC alloca
+# if ! defined _ALLOCA_H && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
+# endif
+# endif
+# endif
+# endif
+
+# ifdef YYSTACK_ALLOC
+ /* Pacify GCC's `empty if-body' warning. */
+# define YYSTACK_FREE(Ptr) do { /* empty */; } while (YYID (0))
+# ifndef YYSTACK_ALLOC_MAXIMUM
+ /* The OS might guarantee only one guard page at the bottom of the stack,
+ and a page size can be as small as 4096 bytes. So we cannot safely
+ invoke alloca (N) if N exceeds 4096. Use a slightly smaller number
+ to allow for a few compiler-allocated temporary stack slots. */
+# define YYSTACK_ALLOC_MAXIMUM 4032 /* reasonable circa 2006 */
+# endif
+# else
+# define YYSTACK_ALLOC YYMALLOC
+# define YYSTACK_FREE YYFREE
+# ifndef YYSTACK_ALLOC_MAXIMUM
+# define YYSTACK_ALLOC_MAXIMUM YYSIZE_MAXIMUM
+# endif
+# if (defined __cplusplus && ! defined _STDLIB_H \
+ && ! ((defined YYMALLOC || defined malloc) \
+ && (defined YYFREE || defined free)))
+# include <stdlib.h> /* INFRINGES ON USER NAME SPACE */
+# ifndef _STDLIB_H
+# define _STDLIB_H 1
+# endif
+# endif
+# ifndef YYMALLOC
+# define YYMALLOC malloc
+# if ! defined malloc && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+#ifndef _MSC_VER
+void *malloc (YYSIZE_T); /* INFRINGES ON USER NAME SPACE */
+#endif
+# endif
+# endif
+# ifndef YYFREE
+# define YYFREE free
+# if ! defined free && ! defined _STDLIB_H && (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+#ifndef _MSC_VER
+void free (void *); /* INFRINGES ON USER NAME SPACE */
+#endif
+# endif
+# endif
+# endif
+#endif /* ! defined yyoverflow || YYERROR_VERBOSE */
+
+
+#if (! defined yyoverflow \
+ && (! defined __cplusplus \
+ || (defined YYSTYPE_IS_TRIVIAL && YYSTYPE_IS_TRIVIAL)))
+
+/* A type that is properly aligned for any stack member. */
+union yyalloc
+{
+ yytype_int16 yyss_alloc;
+ YYSTYPE yyvs_alloc;
+};
+
+/* The size of the maximum gap between one aligned stack and the next. */
+# define YYSTACK_GAP_MAXIMUM (sizeof (union yyalloc) - 1)
+
+/* The size of an array large to enough to hold all stacks, each with
+ N elements. */
+# define YYSTACK_BYTES(N) \
+ ((N) * (sizeof (yytype_int16) + sizeof (YYSTYPE)) \
+ + YYSTACK_GAP_MAXIMUM)
+
+/* Copy COUNT objects from FROM to TO. The source and destination do
+ not overlap. */
+# ifndef YYCOPY
+# if defined __GNUC__ && 1 < __GNUC__
+# define YYCOPY(To, From, Count) \
+ __builtin_memcpy (To, From, (Count) * sizeof (*(From)))
+# else
+# define YYCOPY(To, From, Count) \
+ do \
+ { \
+ YYSIZE_T yyi; \
+ for (yyi = 0; yyi < (Count); yyi++) \
+ (To)[yyi] = (From)[yyi]; \
+ } \
+ while (YYID (0))
+# endif
+# endif
+
+/* Relocate STACK from its old location to the new one. The
+ local variables YYSIZE and YYSTACKSIZE give the old and new number of
+ elements in the stack, and YYPTR gives the new location of the
+ stack. Advance YYPTR to a properly aligned location for the next
+ stack. */
+# define YYSTACK_RELOCATE(Stack_alloc, Stack) \
+ do \
+ { \
+ YYSIZE_T yynewbytes; \
+ YYCOPY (&yyptr->Stack_alloc, Stack, yysize); \
+ Stack = &yyptr->Stack_alloc; \
+ yynewbytes = yystacksize * sizeof (*Stack) + YYSTACK_GAP_MAXIMUM; \
+ yyptr += yynewbytes / sizeof (*yyptr); \
+ } \
+ while (YYID (0))
+
+#endif
+
+/* YYFINAL -- State number of the termination state. */
+#define YYFINAL 18
+/* YYLAST -- Last index in YYTABLE. */
+#define YYLAST 706
+
+/* YYNTOKENS -- Number of terminals. */
+#define YYNTOKENS 65
+/* YYNNTS -- Number of nonterminals. */
+#define YYNNTS 73
+/* YYNRULES -- Number of rules. */
+#define YYNRULES 184
+/* YYNRULES -- Number of states. */
+#define YYNSTATES 335
+
+/* YYTRANSLATE(YYLEX) -- Bison symbol number corresponding to YYLEX. */
+#define YYUNDEFTOK 2
+#define YYMAXUTOK 257
+
+#define YYTRANSLATE(YYX) \
+ ((unsigned int) (YYX) <= YYMAXUTOK ? yytranslate[YYX] : YYUNDEFTOK)
+
+/* YYTRANSLATE[YYLEX] -- Bison symbol number corresponding to YYLEX. */
+static const yytype_uint8 yytranslate[] =
+{
+ 0, 4, 5, 6, 7, 8, 9, 10, 11, 2,
+ 12, 13, 14, 15, 16, 2, 2, 2, 2, 2,
+ 17, 18, 19, 20, 21, 22, 23, 24, 25, 26,
+ 27, 28, 29, 30, 31, 32, 33, 34, 35, 2,
+ 36, 37, 38, 39, 40, 41, 42, 43, 44, 45,
+ 46, 47, 48, 49, 50, 51, 2, 2, 2, 2,
+ 52, 53, 54, 55, 56, 2, 2, 2, 2, 2,
+ 57, 58, 59, 60, 61, 62, 63, 64, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 3, 1, 2
+};
+
+#if YYDEBUG
+/* YYPRHS[YYN] -- Index of the first RHS symbol of rule number YYN in
+ YYRHS. */
+static const yytype_uint16 yyprhs[] =
+{
+ 0, 0, 3, 5, 7, 9, 12, 14, 22, 24,
+ 26, 28, 31, 33, 41, 46, 48, 50, 52, 54,
+ 56, 58, 59, 62, 64, 66, 68, 70, 72, 74,
+ 76, 78, 80, 83, 84, 87, 90, 93, 96, 99,
+ 102, 105, 108, 111, 114, 117, 120, 123, 126, 129,
+ 134, 137, 141, 146, 152, 156, 160, 162, 164, 168,
+ 175, 179, 181, 184, 186, 193, 200, 204, 206, 207,
+ 211, 215, 217, 220, 222, 226, 230, 236, 243, 250,
+ 256, 263, 270, 277, 284, 287, 289, 295, 297, 299,
+ 301, 303, 306, 308, 314, 316, 320, 322, 324, 328,
+ 335, 339, 341, 345, 349, 351, 355, 361, 365, 369,
+ 371, 377, 384, 386, 388, 390, 392, 394, 396, 398,
+ 400, 402, 404, 406, 408, 410, 412, 414, 416, 418,
+ 420, 421, 423, 425, 427, 429, 431, 433, 434, 438,
+ 440, 444, 448, 452, 456, 460, 462, 465, 468, 471,
+ 474, 476, 481, 483, 487, 491, 493, 498, 500, 504,
+ 509, 516, 518, 520, 522, 524, 526, 527, 531, 533,
+ 535, 537, 539, 542, 544, 546, 548, 550, 552, 554,
+ 556, 558, 560, 562, 563
+};
+
+/* YYRHS -- A `-1'-separated list of the rules' RHS. */
+static const yytype_int16 yyrhs[] =
+{
+ 66, 0, -1, 67, -1, 70, -1, 72, -1, 67,
+ 68, -1, 68, -1, 74, 69, 136, 41, 70, 42,
+ 49, -1, 4, -1, 10, -1, 11, -1, 70, 71,
+ -1, 71, -1, 74, 73, 136, 41, 77, 42, 49,
+ -1, 74, 73, 136, 77, -1, 5, -1, 6, -1,
+ 8, -1, 7, -1, 9, -1, 75, -1, -1, 75,
+ 76, -1, 76, -1, 57, -1, 58, -1, 59, -1,
+ 60, -1, 61, -1, 62, -1, 63, -1, 64, -1,
+ 77, 78, -1, -1, 116, 79, -1, 116, 82, -1,
+ 116, 85, -1, 116, 80, -1, 116, 81, -1, 116,
+ 88, -1, 116, 89, -1, 116, 94, -1, 116, 93,
+ -1, 116, 95, -1, 116, 96, -1, 116, 97, -1,
+ 116, 98, -1, 116, 112, -1, 117, 52, -1, 124,
+ 36, 120, 49, -1, 134, 49, -1, 50, 134, 49,
+ -1, 133, 36, 120, 49, -1, 22, 133, 36, 133,
+ 49, -1, 17, 83, 49, -1, 83, 48, 84, -1,
+ 84, -1, 134, -1, 134, 36, 120, -1, 19, 86,
+ 41, 87, 42, 49, -1, 128, 37, 120, -1, 128,
+ -1, 87, 79, -1, 79, -1, 18, 135, 41, 87,
+ 42, 49, -1, 21, 133, 41, 90, 42, 49, -1,
+ 90, 48, 91, -1, 91, -1, -1, 124, 36, 120,
+ -1, 124, 36, 92, -1, 134, -1, 50, 134, -1,
+ 92, -1, 45, 126, 46, -1, 45, 122, 46, -1,
+ 23, 132, 36, 120, 49, -1, 24, 134, 41, 119,
+ 42, 49, -1, 25, 135, 41, 87, 42, 49, -1,
+ 25, 132, 36, 120, 49, -1, 35, 25, 132, 36,
+ 120, 49, -1, 26, 135, 41, 108, 42, 49, -1,
+ 26, 135, 41, 110, 42, 49, -1, 29, 135, 41,
+ 99, 42, 49, -1, 99, 100, -1, 100, -1, 28,
+ 41, 101, 42, 49, -1, 79, -1, 112, -1, 95,
+ -1, 105, -1, 101, 102, -1, 102, -1, 27, 41,
+ 103, 42, 49, -1, 79, -1, 103, 48, 104, -1,
+ 104, -1, 133, -1, 41, 119, 42, -1, 30, 135,
+ 41, 106, 42, 49, -1, 106, 48, 107, -1, 107,
+ -1, 133, 36, 133, -1, 108, 48, 109, -1, 109,
+ -1, 41, 110, 42, -1, 134, 36, 41, 110, 42,
+ -1, 134, 36, 120, -1, 110, 48, 111, -1, 111,
+ -1, 45, 129, 48, 129, 46, -1, 113, 135, 41,
+ 87, 42, 49, -1, 31, -1, 32, -1, 33, -1,
+ 34, -1, 134, -1, 115, -1, 20, -1, 19, -1,
+ 18, -1, 21, -1, 23, -1, 24, -1, 25, -1,
+ 26, -1, 28, -1, 29, -1, 31, -1, 117, -1,
+ -1, 12, -1, 14, -1, 13, -1, 15, -1, 16,
+ -1, 119, -1, -1, 119, 48, 120, -1, 120, -1,
+ 120, 39, 120, -1, 120, 37, 120, -1, 120, 38,
+ 120, -1, 120, 40, 120, -1, 124, 36, 120, -1,
+ 121, -1, 38, 121, -1, 37, 121, -1, 50, 121,
+ -1, 51, 121, -1, 124, -1, 114, 43, 118, 44,
+ -1, 125, -1, 43, 120, 44, -1, 122, 48, 123,
+ -1, 123, -1, 114, 43, 118, 44, -1, 114, -1,
+ 114, 47, 114, -1, 114, 45, 120, 46, -1, 114,
+ 47, 114, 45, 120, 46, -1, 135, -1, 132, -1,
+ 131, -1, 133, -1, 127, -1, -1, 127, 48, 128,
+ -1, 128, -1, 55, -1, 29, -1, 132, -1, 38,
+ 130, -1, 130, -1, 54, -1, 53, -1, 54, -1,
+ 53, -1, 56, -1, 55, -1, 58, -1, 52, -1,
+ 137, -1, -1, 52, -1
+};
+
+/* YYRLINE[YYN] -- source line where rule number YYN was defined. */
+static const yytype_uint16 yyrline[] =
+{
+ 0, 168, 168, 170, 172, 176, 178, 182, 188, 189,
+ 190, 193, 195, 199, 205, 210, 211, 212, 213, 214,
+ 217, 218, 221, 222, 225, 226, 227, 228, 229, 230,
+ 231, 232, 235, 237, 240, 245, 250, 255, 260, 265,
+ 270, 275, 280, 285, 290, 295, 300, 305, 310, 322,
+ 324, 326, 330, 341, 351, 355, 357, 361, 363, 367,
+ 376, 378, 382, 384, 388, 394, 400, 402, 404, 407,
+ 409, 411, 413, 415, 419, 421, 425, 429, 433, 437,
+ 439, 443, 445, 453, 457, 459, 463, 465, 467, 469,
+ 471, 475, 477, 481, 483, 487, 489, 493, 495, 499,
+ 503, 508, 512, 516, 518, 522, 524, 526, 530, 532,
+ 536, 546, 550, 551, 552, 553, 556, 557, 560, 562,
+ 564, 566, 568, 570, 572, 574, 576, 578, 580, 584,
+ 585, 588, 589, 590, 591, 592, 595, 596, 599, 601,
+ 605, 607, 609, 611, 613, 615, 619, 621, 623, 625,
+ 627, 629, 631, 633, 637, 639, 643, 647, 654, 662,
+ 671, 682, 689, 696, 703, 714, 715, 718, 720, 724,
+ 739, 743, 750, 751, 754, 755, 758, 761, 764, 767,
+ 768, 771, 774, 775, 778
+};
+#endif
+
+#if YYDEBUG || YYERROR_VERBOSE || YYTOKEN_TABLE
+/* YYTNAME[SYMBOL-NUM] -- String name of the symbol SYMBOL-NUM.
+ First, the terminals, then, starting at YYNTOKENS, nonterminals. */
+static const char *const yytname[] =
+{
+ "END_OF_FILE", "error", "$undefined", "ERROR_TOK", "XKB_KEYMAP",
+ "XKB_KEYCODES", "XKB_TYPES", "XKB_SYMBOLS", "XKB_COMPATMAP",
+ "XKB_GEOMETRY", "XKB_SEMANTICS", "XKB_LAYOUT", "INCLUDE", "OVERRIDE",
+ "AUGMENT", "REPLACE", "ALTERNATE", "VIRTUAL_MODS", "TYPE", "INTERPRET",
+ "ACTION_TOK", "KEY", "ALIAS", "GROUP", "MODIFIER_MAP", "INDICATOR",
+ "SHAPE", "KEYS", "ROW", "SECTION", "OVERLAY", "TEXT", "OUTLINE", "SOLID",
+ "LOGO", "VIRTUAL", "EQUALS", "PLUS", "MINUS", "DIVIDE", "TIMES",
+ "OBRACE", "CBRACE", "OPAREN", "CPAREN", "OBRACKET", "CBRACKET", "DOT",
+ "COMMA", "SEMI", "EXCLAM", "INVERT", "STRING", "INTEGER", "FLOAT",
+ "IDENT", "KEYNAME", "PARTIAL", "DEFAULT", "HIDDEN", "ALPHANUMERIC_KEYS",
+ "MODIFIER_KEYS", "KEYPAD_KEYS", "FUNCTION_KEYS", "ALTERNATE_GROUP",
+ "$accept", "XkbFile", "XkbCompMapList", "XkbCompositeMap",
+ "XkbCompositeType", "XkbMapConfigList", "XkbMapConfig", "XkbConfig",
+ "FileType", "OptFlags", "Flags", "Flag", "DeclList", "Decl", "VarDecl",
+ "KeyNameDecl", "KeyAliasDecl", "VModDecl", "VModDefList", "VModDef",
+ "InterpretDecl", "InterpretMatch", "VarDeclList", "KeyTypeDecl",
+ "SymbolsDecl", "SymbolsBody", "SymbolsVarDecl", "ArrayInit",
+ "GroupCompatDecl", "ModMapDecl", "IndicatorMapDecl", "IndicatorNameDecl",
+ "ShapeDecl", "SectionDecl", "SectionBody", "SectionBodyItem", "RowBody",
+ "RowBodyItem", "Keys", "Key", "OverlayDecl", "OverlayKeyList",
+ "OverlayKey", "OutlineList", "OutlineInList", "CoordList", "Coord",
+ "DoodadDecl", "DoodadType", "FieldSpec", "Element", "OptMergeMode",
+ "MergeMode", "OptExprList", "ExprList", "Expr", "Term", "ActionList",
+ "Action", "Lhs", "Terminal", "OptKeySymList", "KeySymList", "KeySym",
+ "SignedNumber", "Number", "Float", "Integer", "KeyName", "Ident",
+ "String", "OptMapName", "MapName", 0
+};
+#endif
+
+# ifdef YYPRINT
+/* YYTOKNUM[YYLEX-NUM] -- Internal token number corresponding to
+ token YYLEX-NUM. */
+static const yytype_uint16 yytoknum[] =
+{
+ 0, 256, 257, 255, 1, 2, 3, 4, 5, 6,
+ 7, 8, 10, 11, 12, 13, 14, 20, 21, 22,
+ 23, 24, 25, 26, 27, 28, 29, 30, 31, 32,
+ 33, 34, 35, 36, 37, 38, 40, 41, 42, 43,
+ 44, 45, 46, 47, 48, 49, 50, 51, 52, 53,
+ 54, 55, 60, 61, 62, 63, 64, 70, 71, 72,
+ 73, 74, 75, 76, 77
+};
+# endif
+
+/* YYR1[YYN] -- Symbol number of symbol that rule YYN derives. */
+static const yytype_uint8 yyr1[] =
+{
+ 0, 65, 66, 66, 66, 67, 67, 68, 69, 69,
+ 69, 70, 70, 71, 72, 73, 73, 73, 73, 73,
+ 74, 74, 75, 75, 76, 76, 76, 76, 76, 76,
+ 76, 76, 77, 77, 78, 78, 78, 78, 78, 78,
+ 78, 78, 78, 78, 78, 78, 78, 78, 78, 79,
+ 79, 79, 80, 81, 82, 83, 83, 84, 84, 85,
+ 86, 86, 87, 87, 88, 89, 90, 90, 90, 91,
+ 91, 91, 91, 91, 92, 92, 93, 94, 95, 96,
+ 96, 97, 97, 98, 99, 99, 100, 100, 100, 100,
+ 100, 101, 101, 102, 102, 103, 103, 104, 104, 105,
+ 106, 106, 107, 108, 108, 109, 109, 109, 110, 110,
+ 111, 112, 113, 113, 113, 113, 114, 114, 115, 115,
+ 115, 115, 115, 115, 115, 115, 115, 115, 115, 116,
+ 116, 117, 117, 117, 117, 117, 118, 118, 119, 119,
+ 120, 120, 120, 120, 120, 120, 121, 121, 121, 121,
+ 121, 121, 121, 121, 122, 122, 123, 124, 124, 124,
+ 124, 125, 125, 125, 125, 126, 126, 127, 127, 128,
+ 128, 128, 129, 129, 130, 130, 131, 132, 133, 134,
+ 134, 135, 136, 136, 137
+};
+
+/* YYR2[YYN] -- Number of symbols composing right hand side of rule YYN. */
+static const yytype_uint8 yyr2[] =
+{
+ 0, 2, 1, 1, 1, 2, 1, 7, 1, 1,
+ 1, 2, 1, 7, 4, 1, 1, 1, 1, 1,
+ 1, 0, 2, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 2, 0, 2, 2, 2, 2, 2, 2,
+ 2, 2, 2, 2, 2, 2, 2, 2, 2, 4,
+ 2, 3, 4, 5, 3, 3, 1, 1, 3, 6,
+ 3, 1, 2, 1, 6, 6, 3, 1, 0, 3,
+ 3, 1, 2, 1, 3, 3, 5, 6, 6, 5,
+ 6, 6, 6, 6, 2, 1, 5, 1, 1, 1,
+ 1, 2, 1, 5, 1, 3, 1, 1, 3, 6,
+ 3, 1, 3, 3, 1, 3, 5, 3, 3, 1,
+ 5, 6, 1, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1,
+ 0, 1, 1, 1, 1, 1, 1, 0, 3, 1,
+ 3, 3, 3, 3, 3, 1, 2, 2, 2, 2,
+ 1, 4, 1, 3, 3, 1, 4, 1, 3, 4,
+ 6, 1, 1, 1, 1, 1, 0, 3, 1, 1,
+ 1, 1, 2, 1, 1, 1, 1, 1, 1, 1,
+ 1, 1, 1, 0, 1
+};
+
+/* YYDEFACT[STATE-NAME] -- Default rule to reduce with in state
+ STATE-NUM when YYTABLE doesn't specify something else to do. Zero
+ means the default is an error. */
+static const yytype_uint8 yydefact[] =
+{
+ 21, 24, 25, 26, 27, 28, 29, 30, 31, 0,
+ 21, 6, 21, 12, 4, 0, 20, 23, 1, 5,
+ 0, 11, 0, 8, 15, 16, 18, 17, 19, 9,
+ 10, 183, 183, 22, 183, 184, 0, 182, 33, 0,
+ 21, 33, 130, 21, 130, 131, 133, 132, 134, 135,
+ 32, 0, 129, 0, 0, 0, 120, 119, 118, 121,
+ 0, 122, 123, 124, 125, 126, 127, 128, 113, 114,
+ 115, 0, 0, 179, 178, 180, 34, 37, 38, 35,
+ 36, 39, 40, 42, 41, 43, 44, 45, 46, 47,
+ 0, 157, 117, 0, 0, 116, 48, 7, 13, 0,
+ 56, 57, 181, 0, 170, 177, 169, 0, 61, 171,
+ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+ 0, 0, 0, 0, 0, 50, 0, 54, 0, 0,
+ 0, 0, 68, 0, 0, 0, 0, 0, 0, 0,
+ 0, 51, 0, 120, 119, 121, 122, 123, 124, 125,
+ 127, 128, 0, 0, 0, 0, 0, 176, 157, 0,
+ 145, 150, 152, 163, 162, 164, 116, 161, 158, 0,
+ 0, 55, 58, 63, 0, 0, 60, 166, 0, 0,
+ 67, 73, 0, 116, 0, 0, 0, 139, 0, 0,
+ 0, 0, 0, 104, 0, 109, 0, 124, 126, 0,
+ 87, 89, 0, 85, 90, 88, 0, 0, 147, 150,
+ 146, 0, 148, 149, 137, 0, 0, 0, 0, 159,
+ 0, 0, 49, 52, 0, 62, 0, 170, 169, 0,
+ 0, 155, 0, 165, 168, 72, 0, 0, 0, 53,
+ 76, 0, 0, 79, 0, 0, 0, 175, 174, 0,
+ 173, 0, 0, 0, 0, 0, 0, 0, 0, 84,
+ 0, 0, 153, 0, 136, 141, 142, 140, 143, 144,
+ 0, 64, 59, 137, 75, 0, 74, 0, 65, 66,
+ 70, 69, 77, 138, 78, 105, 172, 0, 81, 103,
+ 82, 108, 0, 107, 0, 94, 0, 92, 0, 83,
+ 80, 111, 151, 160, 0, 154, 167, 0, 0, 0,
+ 0, 91, 0, 101, 0, 156, 110, 106, 0, 0,
+ 96, 97, 86, 0, 0, 0, 0, 0, 0, 99,
+ 100, 102, 98, 93, 95
+};
+
+/* YYDEFGOTO[NTERM-NUM]. */
+static const yytype_int16 yydefgoto[] =
+{
+ -1, 9, 10, 11, 31, 12, 13, 14, 32, 22,
+ 16, 17, 42, 50, 173, 77, 78, 79, 99, 100,
+ 80, 107, 174, 81, 82, 179, 180, 181, 83, 84,
+ 201, 86, 87, 88, 202, 203, 296, 297, 319, 320,
+ 204, 312, 313, 192, 193, 194, 195, 205, 90, 158,
+ 92, 51, 52, 263, 264, 187, 160, 230, 231, 161,
+ 162, 232, 233, 108, 249, 250, 163, 164, 165, 166,
+ 167, 36, 37
+};
+
+/* YYPACT[STATE-NUM] -- Index in YYTABLE of the portion describing
+ STATE-NUM. */
+#define YYPACT_NINF -188
+static const yytype_int16 yypact[] =
+{
+ 628, -188, -188, -188, -188, -188, -188, -188, -188, 12,
+ 4, -188, 58, -188, -188, 695, 628, -188, -188, -188,
+ 121, -188, 408, -188, -188, -188, -188, -188, -188, -188,
+ -188, -9, -9, -188, -9, -188, 19, -188, 45, 45,
+ 628, -188, 174, 620, 137, -188, -188, -188, -188, -188,
+ -188, 317, 39, -15, 50, 1, 59, -18, -188, 72,
+ 72, 106, 1, -27, 59, -188, 59, 62, -188, -188,
+ -188, 117, 1, -188, -188, -188, -188, -188, -188, -188,
+ -188, -188, -188, -188, -188, -188, -188, -188, -188, -188,
+ 59, 51, -188, 125, 146, 134, -188, -188, -188, 132,
+ -188, 163, -188, 168, -188, -188, -188, 173, 179, -188,
+ 178, 186, 190, 194, 206, 204, 208, 221, 106, 216,
+ 225, 265, 640, 265, 265, -188, 1, -188, 265, 599,
+ 599, 265, 470, 72, 265, 265, 265, 599, -26, 21,
+ 239, -188, 599, -188, -188, -188, -188, -188, -188, -188,
+ -188, -188, 265, 265, 265, 265, 265, -188, 159, 232,
+ -188, 240, -188, -188, -188, -188, -188, -188, 223, 98,
+ 156, -188, 260, -188, 485, 513, 260, 617, 1, 30,
+ -188, -188, 243, 32, 231, 192, 64, 260, 199, 528,
+ 236, 35, 127, -188, 128, -188, 251, 59, 270, 59,
+ -188, -188, 422, -188, -188, -188, 265, 556, -188, -188,
+ -188, 342, -188, -188, 265, 265, 265, 265, 265, -188,
+ 265, 265, -188, -188, 263, -188, 264, 249, 271, 281,
+ 61, -188, 279, 278, -188, -188, 280, 470, 340, -188,
+ -188, 283, 265, -188, 284, 129, 16, -188, -188, 282,
+ -188, 298, -34, 308, 236, 381, 576, 287, 321, -188,
+ 215, 325, -188, 332, 336, 158, 158, -188, -188, 260,
+ 316, -188, -188, 265, -188, 640, -188, -18, -188, -188,
+ -188, 260, -188, 260, -188, -188, -188, 35, -188, -188,
+ -188, -188, 236, 260, 346, -188, 442, -188, 72, -188,
+ -188, -188, -188, -188, 344, -188, -188, 343, 143, -28,
+ 348, -188, 176, -188, 367, -188, -188, -188, 265, 198,
+ -188, -188, -188, 359, 72, 72, 202, 362, -28, -188,
+ -188, -188, -188, -188, -188
+};
+
+/* YYPGOTO[NTERM-NUM]. */
+static const yytype_int16 yypgoto[] =
+{
+ -188, -188, -188, 410, -188, 383, -7, -188, 399, 38,
+ -188, 409, 385, -188, -35, -188, -188, -188, -188, 301,
+ -188, -188, -47, -188, -188, -188, 191, 200, -188, -188,
+ 378, -188, -188, -188, -188, 228, -188, 148, -188, 130,
+ -188, -188, 133, -188, 197, -187, 205, 423, -188, 26,
+ -188, -188, -188, 203, -134, 89, 104, -188, 207, -29,
+ -188, -188, -188, -175, 188, 233, -188, -43, -51, -45,
+ -33, 109, -188
+};
+
+/* YYTABLE[YYPACT[STATE-NUM]]. What to do in state STATE-NUM. If
+ positive, shift that token. If negative, reduce the rule which
+ number is the opposite. If zero, do what YYDEFACT says.
+ If YYTABLE_NINF, syntax error. */
+#define YYTABLE_NINF -180
+static const yytype_int16 yytable[] =
+{
+ 94, 186, 234, 245, -2, 21, 95, 190, 110, 111,
+ 101, 104, 18, 318, 109, 190, 76, 113, 112, 191,
+ 114, 73, 93, 103, 75, 102, 105, 119, 74, 73,
+ 115, 116, 75, 117, 97, 105, 21, 106, 15, 143,
+ 144, 58, 145, 35, 146, 147, 197, 149, 20, 198,
+ 150, 199, 67, 68, 69, 70, 73, 120, -3, 75,
+ 40, 1, 2, 3, 4, 5, 6, 7, 8, 247,
+ 248, 72, 236, 246, -71, 140, 73, 91, 237, 75,
+ -71, 101, 184, 175, 95, 95, 41, 183, 247, 248,
+ 189, 96, 95, 196, 95, 207, 121, 95, 122, 98,
+ 93, 93, 306, 182, 200, 308, 241, 274, 93, 275,
+ 93, 102, 242, 93, -112, 1, 2, 3, 4, 5,
+ 6, 7, 8, 209, 209, 23, 209, 209, 74, 95,
+ 95, 29, 30, 235, 109, 215, 216, 217, 218, 225,
+ 225, 38, 118, 39, 95, 93, 93, 222, 168, 45,
+ 46, 47, 48, 49, 225, 91, 91, 95, 91, 105,
+ 93, 123, 95, 91, 115, 91, 257, 200, 91, 251,
+ 253, 285, 225, 93, -14, 252, 254, 254, 93, 54,
+ 126, 127, 124, 125, 326, 317, 45, 46, 47, 48,
+ 49, 254, 183, 215, 216, 217, 218, 217, 218, 128,
+ 91, 91, 214, 229, 121, 223, 122, 196, 182, 129,
+ 159, 95, 169, 170, 130, 91, 131, 172, 323, 132,
+ 176, 295, 133, 185, 324, 188, 134, 93, 91, 215,
+ 216, 217, 218, 91, 109, 135, 215, 216, 217, 218,
+ 327, 240, 136, 211, 332, 137, 328, 314, 243, 138,
+ 242, 95, 215, 216, 217, 218, 208, 210, 321, 212,
+ 213, 295, 139, 91, 300, 141, 142, 93, 221, 215,
+ 216, 217, 218, 314, 331, 206, 220, 321, 219, 238,
+ 239, 191, 91, 143, 144, 58, 145, 255, 146, 147,
+ 148, 149, -127, 65, 150, 260, 151, 215, 216, 217,
+ 218, 229, 152, 153, 265, 266, 267, 268, 154, 269,
+ 270, 256, 271, 272, -179, 155, 156, 102, 105, 157,
+ 73, 74, 91, 75, 273, 276, 277, 281, 298, 278,
+ 287, 283, 282, 284, 55, 56, 57, 58, 59, 60,
+ 61, 62, 63, 64, 293, 65, 66, 288, 67, 68,
+ 69, 70, 71, 215, 216, 217, 218, 290, 143, 144,
+ 58, 145, 303, 146, 147, 148, 149, 72, 65, 150,
+ 299, 151, 73, 74, 301, 75, 302, 152, 153, 215,
+ 216, 217, 218, 154, 242, 177, 262, 309, 315, 316,
+ 155, 156, 102, 105, 157, 73, 74, 322, 75, 143,
+ 144, 58, 145, 325, 146, 147, 148, 149, 329, 65,
+ 150, 333, 151, 24, 25, 26, 27, 28, 152, 153,
+ 19, 34, 292, 43, 154, 33, 44, 171, 279, 85,
+ 259, 155, 156, 102, 105, 157, 73, 74, 280, 75,
+ 143, 144, 58, 145, 311, 146, 147, 197, 149, 289,
+ 198, 150, 199, 67, 68, 69, 70, 330, 334, 291,
+ 143, 144, 58, 145, 258, 146, 147, 148, 149, 294,
+ 65, 150, 72, 151, 89, 307, 304, 73, 0, 286,
+ 75, 0, 305, 0, 310, 0, 0, 0, 143, 144,
+ 58, 145, 72, 146, 147, 148, 149, 73, 65, 150,
+ 75, 151, 0, 143, 144, 58, 145, 0, 146, 147,
+ 148, 149, 0, 65, 150, 177, 151, 0, 0, 0,
+ 178, 0, 0, 0, 0, 73, 0, 224, 75, 0,
+ 0, 143, 144, 58, 145, 72, 146, 147, 148, 149,
+ 73, 65, 150, 75, 151, 0, 143, 144, 58, 145,
+ 0, 146, 147, 148, 149, 226, 65, 150, 0, 151,
+ 0, 0, 0, 72, 0, 0, 0, 0, 73, 0,
+ 244, 75, 0, 0, 143, 144, 58, 145, 72, 146,
+ 147, 148, 149, 73, 65, 150, 75, 151, 0, 0,
+ 0, 0, 0, 0, 143, 144, 58, 145, 261, 146,
+ 147, 148, 149, 294, 65, 150, 72, 151, 0, 0,
+ 0, 73, 0, 0, 75, 0, 0, 143, 144, 58,
+ 145, 0, 146, 147, 148, 149, 72, 65, 150, 0,
+ 151, 73, 0, 0, 75, 143, 144, 58, 145, 0,
+ 146, 147, 148, 149, 0, 65, 227, 0, 151, 72,
+ 0, 0, 0, 0, 73, 0, 0, 75, 143, 144,
+ 58, 145, 53, 146, 147, 148, 149, 0, 65, 150,
+ 105, 151, 228, 0, 0, 75, 0, 1, 2, 3,
+ 4, 5, 6, 7, 8, 1, 2, 3, 4, 5,
+ 6, 7, 8, 0, 0, 73, 0, 0, 75, 23,
+ 24, 25, 26, 27, 28, 29, 30
+};
+
+static const yytype_int16 yycheck[] =
+{
+ 51, 135, 177, 190, 0, 12, 51, 41, 59, 60,
+ 55, 29, 0, 41, 57, 41, 51, 62, 61, 45,
+ 63, 55, 51, 56, 58, 52, 53, 72, 56, 55,
+ 63, 64, 58, 66, 49, 53, 43, 55, 0, 18,
+ 19, 20, 21, 52, 23, 24, 25, 26, 10, 28,
+ 29, 30, 31, 32, 33, 34, 55, 90, 0, 58,
+ 41, 57, 58, 59, 60, 61, 62, 63, 64, 53,
+ 54, 50, 42, 38, 42, 118, 55, 51, 48, 58,
+ 48, 126, 133, 130, 129, 130, 41, 132, 53, 54,
+ 137, 52, 137, 138, 139, 142, 45, 142, 47, 49,
+ 129, 130, 277, 132, 139, 292, 42, 46, 137, 48,
+ 139, 52, 48, 142, 52, 57, 58, 59, 60, 61,
+ 62, 63, 64, 152, 153, 4, 155, 156, 56, 174,
+ 175, 10, 11, 178, 177, 37, 38, 39, 40, 174,
+ 175, 32, 25, 34, 189, 174, 175, 49, 122, 12,
+ 13, 14, 15, 16, 189, 129, 130, 202, 132, 53,
+ 189, 36, 207, 137, 197, 139, 199, 202, 142, 42,
+ 42, 42, 207, 202, 0, 48, 48, 48, 207, 42,
+ 48, 49, 36, 49, 318, 42, 12, 13, 14, 15,
+ 16, 48, 237, 37, 38, 39, 40, 39, 40, 36,
+ 174, 175, 43, 177, 45, 49, 47, 252, 237, 41,
+ 121, 256, 123, 124, 41, 189, 37, 128, 42, 41,
+ 131, 256, 36, 134, 48, 136, 36, 256, 202, 37,
+ 38, 39, 40, 207, 277, 41, 37, 38, 39, 40,
+ 42, 49, 36, 154, 42, 41, 48, 298, 49, 41,
+ 48, 296, 37, 38, 39, 40, 152, 153, 309, 155,
+ 156, 296, 41, 237, 49, 49, 41, 296, 45, 37,
+ 38, 39, 40, 324, 325, 36, 36, 328, 46, 36,
+ 49, 45, 256, 18, 19, 20, 21, 36, 23, 24,
+ 25, 26, 43, 28, 29, 206, 31, 37, 38, 39,
+ 40, 275, 37, 38, 215, 216, 217, 218, 43, 220,
+ 221, 41, 49, 49, 43, 50, 51, 52, 53, 54,
+ 55, 56, 296, 58, 43, 46, 48, 238, 41, 49,
+ 48, 242, 49, 49, 17, 18, 19, 20, 21, 22,
+ 23, 24, 25, 26, 255, 28, 29, 49, 31, 32,
+ 33, 34, 35, 37, 38, 39, 40, 49, 18, 19,
+ 20, 21, 46, 23, 24, 25, 26, 50, 28, 29,
+ 49, 31, 55, 56, 49, 58, 44, 37, 38, 37,
+ 38, 39, 40, 43, 48, 45, 44, 41, 44, 46,
+ 50, 51, 52, 53, 54, 55, 56, 49, 58, 18,
+ 19, 20, 21, 36, 23, 24, 25, 26, 49, 28,
+ 29, 49, 31, 5, 6, 7, 8, 9, 37, 38,
+ 10, 22, 41, 40, 43, 16, 41, 126, 237, 51,
+ 202, 50, 51, 52, 53, 54, 55, 56, 238, 58,
+ 18, 19, 20, 21, 296, 23, 24, 25, 26, 252,
+ 28, 29, 30, 31, 32, 33, 34, 324, 328, 254,
+ 18, 19, 20, 21, 42, 23, 24, 25, 26, 27,
+ 28, 29, 50, 31, 51, 287, 273, 55, -1, 246,
+ 58, -1, 275, -1, 42, -1, -1, -1, 18, 19,
+ 20, 21, 50, 23, 24, 25, 26, 55, 28, 29,
+ 58, 31, -1, 18, 19, 20, 21, -1, 23, 24,
+ 25, 26, -1, 28, 29, 45, 31, -1, -1, -1,
+ 50, -1, -1, -1, -1, 55, -1, 42, 58, -1,
+ -1, 18, 19, 20, 21, 50, 23, 24, 25, 26,
+ 55, 28, 29, 58, 31, -1, 18, 19, 20, 21,
+ -1, 23, 24, 25, 26, 42, 28, 29, -1, 31,
+ -1, -1, -1, 50, -1, -1, -1, -1, 55, -1,
+ 42, 58, -1, -1, 18, 19, 20, 21, 50, 23,
+ 24, 25, 26, 55, 28, 29, 58, 31, -1, -1,
+ -1, -1, -1, -1, 18, 19, 20, 21, 42, 23,
+ 24, 25, 26, 27, 28, 29, 50, 31, -1, -1,
+ -1, 55, -1, -1, 58, -1, -1, 18, 19, 20,
+ 21, -1, 23, 24, 25, 26, 50, 28, 29, -1,
+ 31, 55, -1, -1, 58, 18, 19, 20, 21, -1,
+ 23, 24, 25, 26, -1, 28, 29, -1, 31, 50,
+ -1, -1, -1, -1, 55, -1, -1, 58, 18, 19,
+ 20, 21, 42, 23, 24, 25, 26, -1, 28, 29,
+ 53, 31, 55, -1, -1, 58, -1, 57, 58, 59,
+ 60, 61, 62, 63, 64, 57, 58, 59, 60, 61,
+ 62, 63, 64, -1, -1, 55, -1, -1, 58, 4,
+ 5, 6, 7, 8, 9, 10, 11
+};
+
+/* YYSTOS[STATE-NUM] -- The (internal number of the) accessing
+ symbol of state STATE-NUM. */
+static const yytype_uint8 yystos[] =
+{
+ 0, 57, 58, 59, 60, 61, 62, 63, 64, 66,
+ 67, 68, 70, 71, 72, 74, 75, 76, 0, 68,
+ 74, 71, 74, 4, 5, 6, 7, 8, 9, 10,
+ 11, 69, 73, 76, 73, 52, 136, 137, 136, 136,
+ 41, 41, 77, 70, 77, 12, 13, 14, 15, 16,
+ 78, 116, 117, 42, 42, 17, 18, 19, 20, 21,
+ 22, 23, 24, 25, 26, 28, 29, 31, 32, 33,
+ 34, 35, 50, 55, 56, 58, 79, 80, 81, 82,
+ 85, 88, 89, 93, 94, 95, 96, 97, 98, 112,
+ 113, 114, 115, 124, 133, 134, 52, 49, 49, 83,
+ 84, 134, 52, 135, 29, 53, 55, 86, 128, 132,
+ 133, 133, 132, 134, 132, 135, 135, 135, 25, 134,
+ 135, 45, 47, 36, 36, 49, 48, 49, 36, 41,
+ 41, 37, 41, 36, 36, 41, 36, 41, 41, 41,
+ 132, 49, 41, 18, 19, 21, 23, 24, 25, 26,
+ 29, 31, 37, 38, 43, 50, 51, 54, 114, 120,
+ 121, 124, 125, 131, 132, 133, 134, 135, 114, 120,
+ 120, 84, 120, 79, 87, 87, 120, 45, 50, 90,
+ 91, 92, 124, 134, 133, 120, 119, 120, 120, 87,
+ 41, 45, 108, 109, 110, 111, 134, 25, 28, 30,
+ 79, 95, 99, 100, 105, 112, 36, 87, 121, 124,
+ 121, 120, 121, 121, 43, 37, 38, 39, 40, 46,
+ 36, 45, 49, 49, 42, 79, 42, 29, 55, 114,
+ 122, 123, 126, 127, 128, 134, 42, 48, 36, 49,
+ 49, 42, 48, 49, 42, 110, 38, 53, 54, 129,
+ 130, 42, 48, 42, 48, 36, 41, 135, 42, 100,
+ 120, 42, 44, 118, 119, 120, 120, 120, 120, 120,
+ 120, 49, 49, 43, 46, 48, 46, 48, 49, 91,
+ 92, 120, 49, 120, 49, 42, 130, 48, 49, 109,
+ 49, 111, 41, 120, 27, 79, 101, 102, 41, 49,
+ 49, 49, 44, 46, 118, 123, 128, 129, 110, 41,
+ 42, 102, 106, 107, 133, 44, 46, 42, 41, 103,
+ 104, 133, 49, 42, 48, 36, 119, 42, 48, 49,
+ 107, 133, 42, 49, 104
+};
+
+#define yyerrok (yyerrstatus = 0)
+#define yyclearin (yychar = YYEMPTY)
+#define YYEMPTY (-2)
+#define YYEOF 0
+
+#define YYACCEPT goto yyacceptlab
+#define YYABORT goto yyabortlab
+#define YYERROR goto yyerrorlab
+
+
+/* Like YYERROR except do call yyerror. This remains here temporarily
+ to ease the transition to the new meaning of YYERROR, for GCC.
+ Once GCC version 2 has supplanted version 1, this can go. */
+
+#define YYFAIL goto yyerrlab
+
+#define YYRECOVERING() (!!yyerrstatus)
+
+#define YYBACKUP(Token, Value) \
+do \
+ if (yychar == YYEMPTY && yylen == 1) \
+ { \
+ yychar = (Token); \
+ yylval = (Value); \
+ yytoken = YYTRANSLATE (yychar); \
+ YYPOPSTACK (1); \
+ goto yybackup; \
+ } \
+ else \
+ { \
+ yyerror (YY_("syntax error: cannot back up")); \
+ YYERROR; \
+ } \
+while (YYID (0))
+
+
+#define YYTERROR 1
+#define YYERRCODE 256
+
+
+/* YYLLOC_DEFAULT -- Set CURRENT to span from RHS[1] to RHS[N].
+ If N is 0, then set CURRENT to the empty location which ends
+ the previous symbol: RHS[0] (always defined). */
+
+#define YYRHSLOC(Rhs, K) ((Rhs)[K])
+#ifndef YYLLOC_DEFAULT
+# define YYLLOC_DEFAULT(Current, Rhs, N) \
+ do \
+ if (YYID (N)) \
+ { \
+ (Current).first_line = YYRHSLOC (Rhs, 1).first_line; \
+ (Current).first_column = YYRHSLOC (Rhs, 1).first_column; \
+ (Current).last_line = YYRHSLOC (Rhs, N).last_line; \
+ (Current).last_column = YYRHSLOC (Rhs, N).last_column; \
+ } \
+ else \
+ { \
+ (Current).first_line = (Current).last_line = \
+ YYRHSLOC (Rhs, 0).last_line; \
+ (Current).first_column = (Current).last_column = \
+ YYRHSLOC (Rhs, 0).last_column; \
+ } \
+ while (YYID (0))
+#endif
+
+
+/* YY_LOCATION_PRINT -- Print the location on the stream.
+ This macro was not mandated originally: define only if we know
+ we won't break user code: when these are the locations we know. */
+
+#ifndef YY_LOCATION_PRINT
+# if YYLTYPE_IS_TRIVIAL
+# define YY_LOCATION_PRINT(File, Loc) \
+ fprintf (File, "%d.%d-%d.%d", \
+ (Loc).first_line, (Loc).first_column, \
+ (Loc).last_line, (Loc).last_column)
+# else
+# define YY_LOCATION_PRINT(File, Loc) ((void) 0)
+# endif
+#endif
+
+
+/* YYLEX -- calling `yylex' with the right arguments. */
+
+#ifdef YYLEX_PARAM
+# define YYLEX yylex (YYLEX_PARAM)
+#else
+# define YYLEX yylex ()
+#endif
+
+/* Enable debugging if requested. */
+#if YYDEBUG
+
+# ifndef YYFPRINTF
+# include <stdio.h> /* INFRINGES ON USER NAME SPACE */
+# define YYFPRINTF fprintf
+# endif
+
+# define YYDPRINTF(Args) \
+do { \
+ if (yydebug) \
+ YYFPRINTF Args; \
+} while (YYID (0))
+
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location) \
+do { \
+ if (yydebug) \
+ { \
+ YYFPRINTF (stderr, "%s ", Title); \
+ yy_symbol_print (stderr, \
+ Type, Value); \
+ YYFPRINTF (stderr, "\n"); \
+ } \
+} while (YYID (0))
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_value_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_value_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (!yyvaluep)
+ return;
+# ifdef YYPRINT
+ if (yytype < YYNTOKENS)
+ YYPRINT (yyoutput, yytoknum[yytype], *yyvaluep);
+# else
+ YYUSE (yyoutput);
+# endif
+ switch (yytype)
+ {
+ default:
+ break;
+ }
+}
+
+
+/*--------------------------------.
+| Print this symbol on YYOUTPUT. |
+`--------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_symbol_print (FILE *yyoutput, int yytype, YYSTYPE const * const yyvaluep)
+#else
+static void
+yy_symbol_print (yyoutput, yytype, yyvaluep)
+ FILE *yyoutput;
+ int yytype;
+ YYSTYPE const * const yyvaluep;
+#endif
+{
+ if (yytype < YYNTOKENS)
+ YYFPRINTF (yyoutput, "token %s (", yytname[yytype]);
+ else
+ YYFPRINTF (yyoutput, "nterm %s (", yytname[yytype]);
+
+ yy_symbol_value_print (yyoutput, yytype, yyvaluep);
+ YYFPRINTF (yyoutput, ")");
+}
+
+/*------------------------------------------------------------------.
+| yy_stack_print -- Print the state stack from its BOTTOM up to its |
+| TOP (included). |
+`------------------------------------------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_stack_print (yytype_int16 *yybottom, yytype_int16 *yytop)
+#else
+static void
+yy_stack_print (yybottom, yytop)
+ yytype_int16 *yybottom;
+ yytype_int16 *yytop;
+#endif
+{
+ YYFPRINTF (stderr, "Stack now");
+ for (; yybottom <= yytop; yybottom++)
+ {
+ int yybot = *yybottom;
+ YYFPRINTF (stderr, " %d", yybot);
+ }
+ YYFPRINTF (stderr, "\n");
+}
+
+# define YY_STACK_PRINT(Bottom, Top) \
+do { \
+ if (yydebug) \
+ yy_stack_print ((Bottom), (Top)); \
+} while (YYID (0))
+
+
+/*------------------------------------------------.
+| Report that the YYRULE is going to be reduced. |
+`------------------------------------------------*/
+
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yy_reduce_print (YYSTYPE *yyvsp, int yyrule)
+#else
+static void
+yy_reduce_print (yyvsp, yyrule)
+ YYSTYPE *yyvsp;
+ int yyrule;
+#endif
+{
+ int yynrhs = yyr2[yyrule];
+ int yyi;
+ unsigned long int yylno = yyrline[yyrule];
+ YYFPRINTF (stderr, "Reducing stack by rule %d (line %lu):\n",
+ yyrule - 1, yylno);
+ /* The symbols being reduced. */
+ for (yyi = 0; yyi < yynrhs; yyi++)
+ {
+ YYFPRINTF (stderr, " $%d = ", yyi + 1);
+ yy_symbol_print (stderr, yyrhs[yyprhs[yyrule] + yyi],
+ &(yyvsp[(yyi + 1) - (yynrhs)])
+ );
+ YYFPRINTF (stderr, "\n");
+ }
+}
+
+# define YY_REDUCE_PRINT(Rule) \
+do { \
+ if (yydebug) \
+ yy_reduce_print (yyvsp, Rule); \
+} while (YYID (0))
+
+/* Nonzero means print parse trace. It is left uninitialized so that
+ multiple parsers can coexist. */
+int yydebug;
+#else /* !YYDEBUG */
+# define YYDPRINTF(Args)
+# define YY_SYMBOL_PRINT(Title, Type, Value, Location)
+# define YY_STACK_PRINT(Bottom, Top)
+# define YY_REDUCE_PRINT(Rule)
+#endif /* !YYDEBUG */
+
+
+/* YYINITDEPTH -- initial size of the parser's stacks. */
+#ifndef YYINITDEPTH
+# define YYINITDEPTH 200
+#endif
+
+/* YYMAXDEPTH -- maximum size the stacks can grow to (effective only
+ if the built-in stack extension method is used).
+
+ Do not make this value too large; the results are undefined if
+ YYSTACK_ALLOC_MAXIMUM < YYSTACK_BYTES (YYMAXDEPTH)
+ evaluated with infinite-precision integer arithmetic. */
+
+#ifndef YYMAXDEPTH
+# define YYMAXDEPTH 10000
+#endif
+
+
+
+#if YYERROR_VERBOSE
+
+# ifndef yystrlen
+# if defined __GLIBC__ && defined _STRING_H
+# define yystrlen strlen
+# else
+/* Return the length of YYSTR. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static YYSIZE_T
+yystrlen (const char *yystr)
+#else
+static YYSIZE_T
+yystrlen (yystr)
+ const char *yystr;
+#endif
+{
+ YYSIZE_T yylen;
+ for (yylen = 0; yystr[yylen]; yylen++)
+ continue;
+ return yylen;
+}
+# endif
+# endif
+
+# ifndef yystpcpy
+# if defined __GLIBC__ && defined _STRING_H && defined _GNU_SOURCE
+# define yystpcpy stpcpy
+# else
+/* Copy YYSRC to YYDEST, returning the address of the terminating '\0' in
+ YYDEST. */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static char *
+yystpcpy (char *yydest, const char *yysrc)
+#else
+static char *
+yystpcpy (yydest, yysrc)
+ char *yydest;
+ const char *yysrc;
+#endif
+{
+ char *yyd = yydest;
+ const char *yys = yysrc;
+
+ while ((*yyd++ = *yys++) != '\0')
+ continue;
+
+ return yyd - 1;
+}
+# endif
+# endif
+
+# ifndef yytnamerr
+/* Copy to YYRES the contents of YYSTR after stripping away unnecessary
+ quotes and backslashes, so that it's suitable for yyerror. The
+ heuristic is that double-quoting is unnecessary unless the string
+ contains an apostrophe, a comma, or backslash (other than
+ backslash-backslash). YYSTR is taken from yytname. If YYRES is
+ null, do not copy; instead, return the length of what the result
+ would have been. */
+static YYSIZE_T
+yytnamerr (char *yyres, const char *yystr)
+{
+ if (*yystr == '"')
+ {
+ YYSIZE_T yyn = 0;
+ char const *yyp = yystr;
+
+ for (;;)
+ switch (*++yyp)
+ {
+ case '\'':
+ case ',':
+ goto do_not_strip_quotes;
+
+ case '\\':
+ if (*++yyp != '\\')
+ goto do_not_strip_quotes;
+ /* Fall through. */
+ default:
+ if (yyres)
+ yyres[yyn] = *yyp;
+ yyn++;
+ break;
+
+ case '"':
+ if (yyres)
+ yyres[yyn] = '\0';
+ return yyn;
+ }
+ do_not_strip_quotes: ;
+ }
+
+ if (! yyres)
+ return yystrlen (yystr);
+
+ return yystpcpy (yyres, yystr) - yyres;
+}
+# endif
+
+/* Copy into YYRESULT an error message about the unexpected token
+ YYCHAR while in state YYSTATE. Return the number of bytes copied,
+ including the terminating null byte. If YYRESULT is null, do not
+ copy anything; just return the number of bytes that would be
+ copied. As a special case, return 0 if an ordinary "syntax error"
+ message will do. Return YYSIZE_MAXIMUM if overflow occurs during
+ size calculation. */
+static YYSIZE_T
+yysyntax_error (char *yyresult, int yystate, int yychar)
+{
+ int yyn = yypact[yystate];
+
+ if (! (YYPACT_NINF < yyn && yyn <= YYLAST))
+ return 0;
+ else
+ {
+ int yytype = YYTRANSLATE (yychar);
+ YYSIZE_T yysize0 = yytnamerr (0, yytname[yytype]);
+ YYSIZE_T yysize = yysize0;
+ YYSIZE_T yysize1;
+ int yysize_overflow = 0;
+ enum { YYERROR_VERBOSE_ARGS_MAXIMUM = 5 };
+ char const *yyarg[YYERROR_VERBOSE_ARGS_MAXIMUM];
+ int yyx;
+
+# if 0
+ /* This is so xgettext sees the translatable formats that are
+ constructed on the fly. */
+ YY_("syntax error, unexpected %s");
+ YY_("syntax error, unexpected %s, expecting %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s");
+ YY_("syntax error, unexpected %s, expecting %s or %s or %s or %s");
+# endif
+ char *yyfmt;
+ char const *yyf;
+ static char const yyunexpected[] = "syntax error, unexpected %s";
+ static char const yyexpecting[] = ", expecting %s";
+ static char const yyor[] = " or %s";
+ char yyformat[sizeof yyunexpected
+ + sizeof yyexpecting - 1
+ + ((YYERROR_VERBOSE_ARGS_MAXIMUM - 2)
+ * (sizeof yyor - 1))];
+ char const *yyprefix = yyexpecting;
+
+ /* Start YYX at -YYN if negative to avoid negative indexes in
+ YYCHECK. */
+ int yyxbegin = yyn < 0 ? -yyn : 0;
+
+ /* Stay within bounds of both yycheck and yytname. */
+ int yychecklim = YYLAST - yyn + 1;
+ int yyxend = yychecklim < YYNTOKENS ? yychecklim : YYNTOKENS;
+ int yycount = 1;
+
+ yyarg[0] = yytname[yytype];
+ yyfmt = yystpcpy (yyformat, yyunexpected);
+
+ for (yyx = yyxbegin; yyx < yyxend; ++yyx)
+ if (yycheck[yyx + yyn] == yyx && yyx != YYTERROR)
+ {
+ if (yycount == YYERROR_VERBOSE_ARGS_MAXIMUM)
+ {
+ yycount = 1;
+ yysize = yysize0;
+ yyformat[sizeof yyunexpected - 1] = '\0';
+ break;
+ }
+ yyarg[yycount++] = yytname[yyx];
+ yysize1 = yysize + yytnamerr (0, yytname[yyx]);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+ yyfmt = yystpcpy (yyfmt, yyprefix);
+ yyprefix = yyor;
+ }
+
+ yyf = YY_(yyformat);
+ yysize1 = yysize + yystrlen (yyf);
+ yysize_overflow |= (yysize1 < yysize);
+ yysize = yysize1;
+
+ if (yysize_overflow)
+ return YYSIZE_MAXIMUM;
+
+ if (yyresult)
+ {
+ /* Avoid sprintf, as that infringes on the user's name space.
+ Don't have undefined behavior even if the translation
+ produced a string with the wrong number of "%s"s. */
+ char *yyp = yyresult;
+ int yyi = 0;
+ while ((*yyp = *yyf) != '\0')
+ {
+ if (*yyp == '%' && yyf[1] == 's' && yyi < yycount)
+ {
+ yyp += yytnamerr (yyp, yyarg[yyi++]);
+ yyf += 2;
+ }
+ else
+ {
+ yyp++;
+ yyf++;
+ }
+ }
+ }
+ return yysize;
+ }
+}
+#endif /* YYERROR_VERBOSE */
+
+
+/*-----------------------------------------------.
+| Release the memory associated to this symbol. |
+`-----------------------------------------------*/
+
+/*ARGSUSED*/
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+static void
+yydestruct (const char *yymsg, int yytype, YYSTYPE *yyvaluep)
+#else
+static void
+yydestruct (yymsg, yytype, yyvaluep)
+ const char *yymsg;
+ int yytype;
+ YYSTYPE *yyvaluep;
+#endif
+{
+ YYUSE (yyvaluep);
+
+ if (!yymsg)
+ yymsg = "Deleting";
+ YY_SYMBOL_PRINT (yymsg, yytype, yyvaluep, yylocationp);
+
+ switch (yytype)
+ {
+
+ default:
+ break;
+ }
+}
+
+/* Prevent warnings from -Wmissing-prototypes. */
+#ifdef YYPARSE_PARAM
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void *YYPARSE_PARAM);
+#else
+int yyparse ();
+#endif
+#else /* ! YYPARSE_PARAM */
+#if defined __STDC__ || defined __cplusplus
+int yyparse (void);
+#else
+int yyparse ();
+#endif
+#endif /* ! YYPARSE_PARAM */
+
+
+/* The lookahead symbol. */
+int yychar;
+
+/* The semantic value of the lookahead symbol. */
+YYSTYPE yylval;
+
+/* Number of syntax errors so far. */
+int yynerrs;
+
+
+
+/*-------------------------.
+| yyparse or yypush_parse. |
+`-------------------------*/
+
+#ifdef YYPARSE_PARAM
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void *YYPARSE_PARAM)
+#else
+int
+yyparse (YYPARSE_PARAM)
+ void *YYPARSE_PARAM;
+#endif
+#else /* ! YYPARSE_PARAM */
+#if (defined __STDC__ || defined __C99__FUNC__ \
+ || defined __cplusplus || defined _MSC_VER)
+int
+yyparse (void)
+#else
+int
+yyparse ()
+
+#endif
+#endif
+{
+
+
+ int yystate;
+ /* Number of tokens to shift before error messages enabled. */
+ int yyerrstatus;
+
+ /* The stacks and their tools:
+ `yyss': related to states.
+ `yyvs': related to semantic values.
+
+ Refer to the stacks thru separate pointers, to allow yyoverflow
+ to reallocate them elsewhere. */
+
+ /* The state stack. */
+ yytype_int16 yyssa[YYINITDEPTH];
+ yytype_int16 *yyss;
+ yytype_int16 *yyssp;
+
+ /* The semantic value stack. */
+ YYSTYPE yyvsa[YYINITDEPTH];
+ YYSTYPE *yyvs;
+ YYSTYPE *yyvsp;
+
+ YYSIZE_T yystacksize;
+
+ int yyn;
+ int yyresult;
+ /* Lookahead token as an internal (translated) token number. */
+ int yytoken;
+ /* The variables used to return semantic value and location from the
+ action routines. */
+ YYSTYPE yyval;
+
+#if YYERROR_VERBOSE
+ /* Buffer for error messages, and its allocated size. */
+ char yymsgbuf[128];
+ char *yymsg = yymsgbuf;
+ YYSIZE_T yymsg_alloc = sizeof yymsgbuf;
+#endif
+
+#define YYPOPSTACK(N) (yyvsp -= (N), yyssp -= (N))
+
+ /* The number of symbols on the RHS of the reduced rule.
+ Keep to zero when no symbol should be popped. */
+ int yylen = 0;
+
+ yytoken = 0;
+ yyss = yyssa;
+ yyvs = yyvsa;
+ yystacksize = YYINITDEPTH;
+
+ YYDPRINTF ((stderr, "Starting parse\n"));
+
+ yystate = 0;
+ yyerrstatus = 0;
+ yynerrs = 0;
+ yychar = YYEMPTY; /* Cause a token to be read. */
+
+ /* Initialize stack pointers.
+ Waste one element of value and location stack
+ so that they stay on the same level as the state stack.
+ The wasted elements are never initialized. */
+ yyssp = yyss;
+ yyvsp = yyvs;
+
+ goto yysetstate;
+
+/*------------------------------------------------------------.
+| yynewstate -- Push a new state, which is found in yystate. |
+`------------------------------------------------------------*/
+ yynewstate:
+ /* In all cases, when you get here, the value and location stacks
+ have just been pushed. So pushing a state here evens the stacks. */
+ yyssp++;
+
+ yysetstate:
+ *yyssp = yystate;
+
+ if (yyss + yystacksize - 1 <= yyssp)
+ {
+ /* Get the current used size of the three stacks, in elements. */
+ YYSIZE_T yysize = yyssp - yyss + 1;
+
+#ifdef yyoverflow
+ {
+ /* Give user a chance to reallocate the stack. Use copies of
+ these so that the &'s don't force the real ones into
+ memory. */
+ YYSTYPE *yyvs1 = yyvs;
+ yytype_int16 *yyss1 = yyss;
+
+ /* Each stack pointer address is followed by the size of the
+ data in use in that stack, in bytes. This used to be a
+ conditional around just the two extra args, but that might
+ be undefined if yyoverflow is a macro. */
+ yyoverflow (YY_("memory exhausted"),
+ &yyss1, yysize * sizeof (*yyssp),
+ &yyvs1, yysize * sizeof (*yyvsp),
+ &yystacksize);
+
+ yyss = yyss1;
+ yyvs = yyvs1;
+ }
+#else /* no yyoverflow */
+# ifndef YYSTACK_RELOCATE
+ goto yyexhaustedlab;
+# else
+ /* Extend the stack our own way. */
+ if (YYMAXDEPTH <= yystacksize)
+ goto yyexhaustedlab;
+ yystacksize *= 2;
+ if (YYMAXDEPTH < yystacksize)
+ yystacksize = YYMAXDEPTH;
+
+ {
+ yytype_int16 *yyss1 = yyss;
+ union yyalloc *yyptr =
+ (union yyalloc *) YYSTACK_ALLOC (YYSTACK_BYTES (yystacksize));
+ if (! yyptr)
+ goto yyexhaustedlab;
+ YYSTACK_RELOCATE (yyss_alloc, yyss);
+ YYSTACK_RELOCATE (yyvs_alloc, yyvs);
+# undef YYSTACK_RELOCATE
+ if (yyss1 != yyssa)
+ YYSTACK_FREE (yyss1);
+ }
+# endif
+#endif /* no yyoverflow */
+
+ yyssp = yyss + yysize - 1;
+ yyvsp = yyvs + yysize - 1;
+
+ YYDPRINTF ((stderr, "Stack size increased to %lu\n",
+ (unsigned long int) yystacksize));
+
+ if (yyss + yystacksize - 1 <= yyssp)
+ YYABORT;
+ }
+
+ YYDPRINTF ((stderr, "Entering state %d\n", yystate));
+
+ if (yystate == YYFINAL)
+ YYACCEPT;
+
+ goto yybackup;
+
+/*-----------.
+| yybackup. |
+`-----------*/
+yybackup:
+
+ /* Do appropriate processing given the current state. Read a
+ lookahead token if we need one and don't already have one. */
+
+ /* First try to decide what to do without reference to lookahead token. */
+ yyn = yypact[yystate];
+ if (yyn == YYPACT_NINF)
+ goto yydefault;
+
+ /* Not known => get a lookahead token if don't already have one. */
+
+ /* YYCHAR is either YYEMPTY or YYEOF or a valid lookahead symbol. */
+ if (yychar == YYEMPTY)
+ {
+ YYDPRINTF ((stderr, "Reading a token: "));
+ yychar = YYLEX;
+ }
+
+ if (yychar <= YYEOF)
+ {
+ yychar = yytoken = YYEOF;
+ YYDPRINTF ((stderr, "Now at end of input.\n"));
+ }
+ else
+ {
+ yytoken = YYTRANSLATE (yychar);
+ YY_SYMBOL_PRINT ("Next token is", yytoken, &yylval, &yylloc);
+ }
+
+ /* If the proper action on seeing token YYTOKEN is to reduce or to
+ detect an error, take that action. */
+ yyn += yytoken;
+ if (yyn < 0 || YYLAST < yyn || yycheck[yyn] != yytoken)
+ goto yydefault;
+ yyn = yytable[yyn];
+ if (yyn <= 0)
+ {
+ if (yyn == 0 || yyn == YYTABLE_NINF)
+ goto yyerrlab;
+ yyn = -yyn;
+ goto yyreduce;
+ }
+
+ /* Count tokens shifted since error; after three, turn off error
+ status. */
+ if (yyerrstatus)
+ yyerrstatus--;
+
+ /* Shift the lookahead token. */
+ YY_SYMBOL_PRINT ("Shifting", yytoken, &yylval, &yylloc);
+
+ /* Discard the shifted token. */
+ yychar = YYEMPTY;
+
+ yystate = yyn;
+ *++yyvsp = yylval;
+
+ goto yynewstate;
+
+
+/*-----------------------------------------------------------.
+| yydefault -- do the default action for the current state. |
+`-----------------------------------------------------------*/
+yydefault:
+ yyn = yydefact[yystate];
+ if (yyn == 0)
+ goto yyerrlab;
+ goto yyreduce;
+
+
+/*-----------------------------.
+| yyreduce -- Do a reduction. |
+`-----------------------------*/
+yyreduce:
+ /* yyn is the number of a rule to reduce with. */
+ yylen = yyr2[yyn];
+
+ /* If YYLEN is nonzero, implement the default value of the action:
+ `$$ = $1'.
+
+ Otherwise, the following line sets YYVAL to garbage.
+ This behavior is undocumented and Bison
+ users should not rely upon it. Assigning to YYVAL
+ unconditionally makes the parser a bit smaller, and it avoids a
+ GCC warning that YYVAL may be used uninitialized. */
+ yyval = yyvsp[1-yylen];
+
+
+ YY_REDUCE_PRINT (yyn);
+ switch (yyn)
+ {
+ case 2:
+
+/* Line 1455 of yacc.c */
+#line 169 "xkbparse.y"
+ { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); }
+ break;
+
+ case 3:
+
+/* Line 1455 of yacc.c */
+#line 171 "xkbparse.y"
+ { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); }
+ break;
+
+ case 4:
+
+/* Line 1455 of yacc.c */
+#line 173 "xkbparse.y"
+ { (yyval.file)= rtrnValue= (yyvsp[(1) - (1)].file); }
+ break;
+
+ case 5:
+
+/* Line 1455 of yacc.c */
+#line 177 "xkbparse.y"
+ { (yyval.file)= (XkbFile *)AppendStmt(&(yyvsp[(1) - (2)].file)->common,&(yyvsp[(2) - (2)].file)->common); }
+ break;
+
+ case 6:
+
+/* Line 1455 of yacc.c */
+#line 179 "xkbparse.y"
+ { (yyval.file)= (yyvsp[(1) - (1)].file); }
+ break;
+
+ case 7:
+
+/* Line 1455 of yacc.c */
+#line 185 "xkbparse.y"
+ { (yyval.file)= CreateXKBFile((yyvsp[(2) - (7)].uval),(yyvsp[(3) - (7)].str),&(yyvsp[(5) - (7)].file)->common,(yyvsp[(1) - (7)].uval)); }
+ break;
+
+ case 8:
+
+/* Line 1455 of yacc.c */
+#line 188 "xkbparse.y"
+ { (yyval.uval)= XkmKeymapFile; }
+ break;
+
+ case 9:
+
+/* Line 1455 of yacc.c */
+#line 189 "xkbparse.y"
+ { (yyval.uval)= XkmSemanticsFile; }
+ break;
+
+ case 10:
+
+/* Line 1455 of yacc.c */
+#line 190 "xkbparse.y"
+ { (yyval.uval)= XkmLayoutFile; }
+ break;
+
+ case 11:
+
+/* Line 1455 of yacc.c */
+#line 194 "xkbparse.y"
+ { (yyval.file)= (XkbFile *)AppendStmt(&(yyvsp[(1) - (2)].file)->common,&(yyvsp[(2) - (2)].file)->common); }
+ break;
+
+ case 12:
+
+/* Line 1455 of yacc.c */
+#line 196 "xkbparse.y"
+ { (yyval.file)= (yyvsp[(1) - (1)].file); }
+ break;
+
+ case 13:
+
+/* Line 1455 of yacc.c */
+#line 202 "xkbparse.y"
+ { (yyval.file)= CreateXKBFile((yyvsp[(2) - (7)].uval),(yyvsp[(3) - (7)].str),(yyvsp[(5) - (7)].any),(yyvsp[(1) - (7)].uval)); }
+ break;
+
+ case 14:
+
+/* Line 1455 of yacc.c */
+#line 206 "xkbparse.y"
+ { (yyval.file)= CreateXKBFile((yyvsp[(2) - (4)].uval),(yyvsp[(3) - (4)].str),(yyvsp[(4) - (4)].any),(yyvsp[(1) - (4)].uval)); }
+ break;
+
+ case 15:
+
+/* Line 1455 of yacc.c */
+#line 210 "xkbparse.y"
+ { (yyval.uval)= XkmKeyNamesIndex; }
+ break;
+
+ case 16:
+
+/* Line 1455 of yacc.c */
+#line 211 "xkbparse.y"
+ { (yyval.uval)= XkmTypesIndex; }
+ break;
+
+ case 17:
+
+/* Line 1455 of yacc.c */
+#line 212 "xkbparse.y"
+ { (yyval.uval)= XkmCompatMapIndex; }
+ break;
+
+ case 18:
+
+/* Line 1455 of yacc.c */
+#line 213 "xkbparse.y"
+ { (yyval.uval)= XkmSymbolsIndex; }
+ break;
+
+ case 19:
+
+/* Line 1455 of yacc.c */
+#line 214 "xkbparse.y"
+ { (yyval.uval)= XkmGeometryIndex; }
+ break;
+
+ case 20:
+
+/* Line 1455 of yacc.c */
+#line 217 "xkbparse.y"
+ { (yyval.uval)= (yyvsp[(1) - (1)].uval); }
+ break;
+
+ case 21:
+
+/* Line 1455 of yacc.c */
+#line 218 "xkbparse.y"
+ { (yyval.uval)= 0; }
+ break;
+
+ case 22:
+
+/* Line 1455 of yacc.c */
+#line 221 "xkbparse.y"
+ { (yyval.uval)= (((yyvsp[(1) - (2)].uval))|((yyvsp[(2) - (2)].uval))); }
+ break;
+
+ case 23:
+
+/* Line 1455 of yacc.c */
+#line 222 "xkbparse.y"
+ { (yyval.uval)= (yyvsp[(1) - (1)].uval); }
+ break;
+
+ case 24:
+
+/* Line 1455 of yacc.c */
+#line 225 "xkbparse.y"
+ { (yyval.uval)= XkbLC_Partial; }
+ break;
+
+ case 25:
+
+/* Line 1455 of yacc.c */
+#line 226 "xkbparse.y"
+ { (yyval.uval)= XkbLC_Default; }
+ break;
+
+ case 26:
+
+/* Line 1455 of yacc.c */
+#line 227 "xkbparse.y"
+ { (yyval.uval)= XkbLC_Hidden; }
+ break;
+
+ case 27:
+
+/* Line 1455 of yacc.c */
+#line 228 "xkbparse.y"
+ { (yyval.uval)= XkbLC_AlphanumericKeys; }
+ break;
+
+ case 28:
+
+/* Line 1455 of yacc.c */
+#line 229 "xkbparse.y"
+ { (yyval.uval)= XkbLC_ModifierKeys; }
+ break;
+
+ case 29:
+
+/* Line 1455 of yacc.c */
+#line 230 "xkbparse.y"
+ { (yyval.uval)= XkbLC_KeypadKeys; }
+ break;
+
+ case 30:
+
+/* Line 1455 of yacc.c */
+#line 231 "xkbparse.y"
+ { (yyval.uval)= XkbLC_FunctionKeys; }
+ break;
+
+ case 31:
+
+/* Line 1455 of yacc.c */
+#line 232 "xkbparse.y"
+ { (yyval.uval)= XkbLC_AlternateGroup; }
+ break;
+
+ case 32:
+
+/* Line 1455 of yacc.c */
+#line 236 "xkbparse.y"
+ { (yyval.any)= AppendStmt((yyvsp[(1) - (2)].any),(yyvsp[(2) - (2)].any)); }
+ break;
+
+ case 33:
+
+/* Line 1455 of yacc.c */
+#line 237 "xkbparse.y"
+ { (yyval.any)= NULL; }
+ break;
+
+ case 34:
+
+/* Line 1455 of yacc.c */
+#line 241 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].var)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].var)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].var)->common;
+ }
+ break;
+
+ case 35:
+
+/* Line 1455 of yacc.c */
+#line 246 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].vmod)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].vmod)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].vmod)->common;
+ }
+ break;
+
+ case 36:
+
+/* Line 1455 of yacc.c */
+#line 251 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].interp)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].interp)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].interp)->common;
+ }
+ break;
+
+ case 37:
+
+/* Line 1455 of yacc.c */
+#line 256 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].keyName)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyName)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].keyName)->common;
+ }
+ break;
+
+ case 38:
+
+/* Line 1455 of yacc.c */
+#line 261 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].keyAlias)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyAlias)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].keyAlias)->common;
+ }
+ break;
+
+ case 39:
+
+/* Line 1455 of yacc.c */
+#line 266 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].keyType)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].keyType)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].keyType)->common;
+ }
+ break;
+
+ case 40:
+
+/* Line 1455 of yacc.c */
+#line 271 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].syms)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].syms)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].syms)->common;
+ }
+ break;
+
+ case 41:
+
+/* Line 1455 of yacc.c */
+#line 276 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].modMask)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].modMask)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].modMask)->common;
+ }
+ break;
+
+ case 42:
+
+/* Line 1455 of yacc.c */
+#line 281 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].groupCompat)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].groupCompat)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].groupCompat)->common;
+ }
+ break;
+
+ case 43:
+
+/* Line 1455 of yacc.c */
+#line 286 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].ledMap)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].ledMap)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].ledMap)->common;
+ }
+ break;
+
+ case 44:
+
+/* Line 1455 of yacc.c */
+#line 291 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].ledName)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].ledName)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].ledName)->common;
+ }
+ break;
+
+ case 45:
+
+/* Line 1455 of yacc.c */
+#line 296 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].shape)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].shape)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].shape)->common;
+ }
+ break;
+
+ case 46:
+
+/* Line 1455 of yacc.c */
+#line 301 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].section)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].section)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].section)->common;
+ }
+ break;
+
+ case 47:
+
+/* Line 1455 of yacc.c */
+#line 306 "xkbparse.y"
+ {
+ (yyvsp[(2) - (2)].doodad)->merge= StmtSetMerge(&(yyvsp[(2) - (2)].doodad)->common,(yyvsp[(1) - (2)].uval));
+ (yyval.any)= &(yyvsp[(2) - (2)].doodad)->common;
+ }
+ break;
+
+ case 48:
+
+/* Line 1455 of yacc.c */
+#line 311 "xkbparse.y"
+ {
+ if ((yyvsp[(1) - (2)].uval)==MergeAltForm) {
+ yyerror("cannot use 'alternate' to include other maps");
+ (yyval.any)= &IncludeCreate(scanStr,MergeDefault)->common;
+ }
+ else {
+ (yyval.any)= &IncludeCreate(scanStr,(yyvsp[(1) - (2)].uval))->common;
+ }
+ }
+ break;
+
+ case 49:
+
+/* Line 1455 of yacc.c */
+#line 323 "xkbparse.y"
+ { (yyval.var)= VarCreate((yyvsp[(1) - (4)].expr),(yyvsp[(3) - (4)].expr)); }
+ break;
+
+ case 50:
+
+/* Line 1455 of yacc.c */
+#line 325 "xkbparse.y"
+ { (yyval.var)= BoolVarCreate((yyvsp[(1) - (2)].sval),1); }
+ break;
+
+ case 51:
+
+/* Line 1455 of yacc.c */
+#line 327 "xkbparse.y"
+ { (yyval.var)= BoolVarCreate((yyvsp[(2) - (3)].sval),0); }
+ break;
+
+ case 52:
+
+/* Line 1455 of yacc.c */
+#line 331 "xkbparse.y"
+ {
+ KeycodeDef *def;
+
+ def= KeycodeCreate((yyvsp[(1) - (4)].str),(yyvsp[(3) - (4)].expr));
+ if ((yyvsp[(1) - (4)].str))
+ free((yyvsp[(1) - (4)].str));
+ (yyval.keyName)= def;
+ }
+ break;
+
+ case 53:
+
+/* Line 1455 of yacc.c */
+#line 342 "xkbparse.y"
+ {
+ KeyAliasDef *def;
+ def= KeyAliasCreate((yyvsp[(2) - (5)].str),(yyvsp[(4) - (5)].str));
+ if ((yyvsp[(2) - (5)].str)) free((yyvsp[(2) - (5)].str));
+ if ((yyvsp[(4) - (5)].str)) free((yyvsp[(4) - (5)].str));
+ (yyval.keyAlias)= def;
+ }
+ break;
+
+ case 54:
+
+/* Line 1455 of yacc.c */
+#line 352 "xkbparse.y"
+ { (yyval.vmod)= (yyvsp[(2) - (3)].vmod); }
+ break;
+
+ case 55:
+
+/* Line 1455 of yacc.c */
+#line 356 "xkbparse.y"
+ { (yyval.vmod)= (VModDef *)AppendStmt(&(yyvsp[(1) - (3)].vmod)->common,&(yyvsp[(3) - (3)].vmod)->common); }
+ break;
+
+ case 56:
+
+/* Line 1455 of yacc.c */
+#line 358 "xkbparse.y"
+ { (yyval.vmod)= (yyvsp[(1) - (1)].vmod); }
+ break;
+
+ case 57:
+
+/* Line 1455 of yacc.c */
+#line 362 "xkbparse.y"
+ { (yyval.vmod)= VModCreate((yyvsp[(1) - (1)].sval),NULL); }
+ break;
+
+ case 58:
+
+/* Line 1455 of yacc.c */
+#line 364 "xkbparse.y"
+ { (yyval.vmod)= VModCreate((yyvsp[(1) - (3)].sval),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 59:
+
+/* Line 1455 of yacc.c */
+#line 370 "xkbparse.y"
+ {
+ (yyvsp[(2) - (6)].interp)->def= (yyvsp[(4) - (6)].var);
+ (yyval.interp)= (yyvsp[(2) - (6)].interp);
+ }
+ break;
+
+ case 60:
+
+/* Line 1455 of yacc.c */
+#line 377 "xkbparse.y"
+ { (yyval.interp)= InterpCreate((KeySym)(yyvsp[(1) - (3)].uval),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 61:
+
+/* Line 1455 of yacc.c */
+#line 379 "xkbparse.y"
+ { (yyval.interp)= InterpCreate((KeySym)(yyvsp[(1) - (1)].uval),NULL); }
+ break;
+
+ case 62:
+
+/* Line 1455 of yacc.c */
+#line 383 "xkbparse.y"
+ { (yyval.var)= (VarDef *)AppendStmt(&(yyvsp[(1) - (2)].var)->common,&(yyvsp[(2) - (2)].var)->common); }
+ break;
+
+ case 63:
+
+/* Line 1455 of yacc.c */
+#line 385 "xkbparse.y"
+ { (yyval.var)= (yyvsp[(1) - (1)].var); }
+ break;
+
+ case 64:
+
+/* Line 1455 of yacc.c */
+#line 391 "xkbparse.y"
+ { (yyval.keyType)= KeyTypeCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); }
+ break;
+
+ case 65:
+
+/* Line 1455 of yacc.c */
+#line 397 "xkbparse.y"
+ { (yyval.syms)= SymbolsCreate((yyvsp[(2) - (6)].str),(ExprDef *)(yyvsp[(4) - (6)].var)); }
+ break;
+
+ case 66:
+
+/* Line 1455 of yacc.c */
+#line 401 "xkbparse.y"
+ { (yyval.var)= (VarDef *)AppendStmt(&(yyvsp[(1) - (3)].var)->common,&(yyvsp[(3) - (3)].var)->common); }
+ break;
+
+ case 67:
+
+/* Line 1455 of yacc.c */
+#line 403 "xkbparse.y"
+ { (yyval.var)= (yyvsp[(1) - (1)].var); }
+ break;
+
+ case 68:
+
+/* Line 1455 of yacc.c */
+#line 404 "xkbparse.y"
+ { (yyval.var)= NULL; }
+ break;
+
+ case 69:
+
+/* Line 1455 of yacc.c */
+#line 408 "xkbparse.y"
+ { (yyval.var)= VarCreate((yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 70:
+
+/* Line 1455 of yacc.c */
+#line 410 "xkbparse.y"
+ { (yyval.var)= VarCreate((yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 71:
+
+/* Line 1455 of yacc.c */
+#line 412 "xkbparse.y"
+ { (yyval.var)= BoolVarCreate((yyvsp[(1) - (1)].sval),1); }
+ break;
+
+ case 72:
+
+/* Line 1455 of yacc.c */
+#line 414 "xkbparse.y"
+ { (yyval.var)= BoolVarCreate((yyvsp[(2) - (2)].sval),0); }
+ break;
+
+ case 73:
+
+/* Line 1455 of yacc.c */
+#line 416 "xkbparse.y"
+ { (yyval.var)= VarCreate(NULL,(yyvsp[(1) - (1)].expr)); }
+ break;
+
+ case 74:
+
+/* Line 1455 of yacc.c */
+#line 420 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(2) - (3)].expr); }
+ break;
+
+ case 75:
+
+/* Line 1455 of yacc.c */
+#line 422 "xkbparse.y"
+ { (yyval.expr)= ExprCreateUnary(ExprActionList,TypeAction,(yyvsp[(2) - (3)].expr)); }
+ break;
+
+ case 76:
+
+/* Line 1455 of yacc.c */
+#line 426 "xkbparse.y"
+ { (yyval.groupCompat)= GroupCompatCreate((yyvsp[(2) - (5)].ival),(yyvsp[(4) - (5)].expr)); }
+ break;
+
+ case 77:
+
+/* Line 1455 of yacc.c */
+#line 430 "xkbparse.y"
+ { (yyval.modMask)= ModMapCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].expr)); }
+ break;
+
+ case 78:
+
+/* Line 1455 of yacc.c */
+#line 434 "xkbparse.y"
+ { (yyval.ledMap)= IndicatorMapCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); }
+ break;
+
+ case 79:
+
+/* Line 1455 of yacc.c */
+#line 438 "xkbparse.y"
+ { (yyval.ledName)= IndicatorNameCreate((yyvsp[(2) - (5)].ival),(yyvsp[(4) - (5)].expr),False); }
+ break;
+
+ case 80:
+
+/* Line 1455 of yacc.c */
+#line 440 "xkbparse.y"
+ { (yyval.ledName)= IndicatorNameCreate((yyvsp[(3) - (6)].ival),(yyvsp[(5) - (6)].expr),True); }
+ break;
+
+ case 81:
+
+/* Line 1455 of yacc.c */
+#line 444 "xkbparse.y"
+ { (yyval.shape)= ShapeDeclCreate((yyvsp[(2) - (6)].sval),(OutlineDef *)&(yyvsp[(4) - (6)].outline)->common); }
+ break;
+
+ case 82:
+
+/* Line 1455 of yacc.c */
+#line 446 "xkbparse.y"
+ {
+ OutlineDef *outlines;
+ outlines= OutlineCreate(None,(yyvsp[(4) - (6)].expr));
+ (yyval.shape)= ShapeDeclCreate((yyvsp[(2) - (6)].sval),outlines);
+ }
+ break;
+
+ case 83:
+
+/* Line 1455 of yacc.c */
+#line 454 "xkbparse.y"
+ { (yyval.section)= SectionDeclCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].row)); }
+ break;
+
+ case 84:
+
+/* Line 1455 of yacc.c */
+#line 458 "xkbparse.y"
+ { (yyval.row)=(RowDef *)AppendStmt(&(yyvsp[(1) - (2)].row)->common,&(yyvsp[(2) - (2)].row)->common);}
+ break;
+
+ case 85:
+
+/* Line 1455 of yacc.c */
+#line 460 "xkbparse.y"
+ { (yyval.row)= (yyvsp[(1) - (1)].row); }
+ break;
+
+ case 86:
+
+/* Line 1455 of yacc.c */
+#line 464 "xkbparse.y"
+ { (yyval.row)= RowDeclCreate((yyvsp[(3) - (5)].key)); }
+ break;
+
+ case 87:
+
+/* Line 1455 of yacc.c */
+#line 466 "xkbparse.y"
+ { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].var); }
+ break;
+
+ case 88:
+
+/* Line 1455 of yacc.c */
+#line 468 "xkbparse.y"
+ { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].doodad); }
+ break;
+
+ case 89:
+
+/* Line 1455 of yacc.c */
+#line 470 "xkbparse.y"
+ { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].ledMap); }
+ break;
+
+ case 90:
+
+/* Line 1455 of yacc.c */
+#line 472 "xkbparse.y"
+ { (yyval.row)= (RowDef *)(yyvsp[(1) - (1)].overlay); }
+ break;
+
+ case 91:
+
+/* Line 1455 of yacc.c */
+#line 476 "xkbparse.y"
+ { (yyval.key)=(KeyDef *)AppendStmt(&(yyvsp[(1) - (2)].key)->common,&(yyvsp[(2) - (2)].key)->common);}
+ break;
+
+ case 92:
+
+/* Line 1455 of yacc.c */
+#line 478 "xkbparse.y"
+ { (yyval.key)= (yyvsp[(1) - (1)].key); }
+ break;
+
+ case 93:
+
+/* Line 1455 of yacc.c */
+#line 482 "xkbparse.y"
+ { (yyval.key)= (yyvsp[(3) - (5)].key); }
+ break;
+
+ case 94:
+
+/* Line 1455 of yacc.c */
+#line 484 "xkbparse.y"
+ { (yyval.key)= (KeyDef *)(yyvsp[(1) - (1)].var); }
+ break;
+
+ case 95:
+
+/* Line 1455 of yacc.c */
+#line 488 "xkbparse.y"
+ { (yyval.key)=(KeyDef *)AppendStmt(&(yyvsp[(1) - (3)].key)->common,&(yyvsp[(3) - (3)].key)->common);}
+ break;
+
+ case 96:
+
+/* Line 1455 of yacc.c */
+#line 490 "xkbparse.y"
+ { (yyval.key)= (yyvsp[(1) - (1)].key); }
+ break;
+
+ case 97:
+
+/* Line 1455 of yacc.c */
+#line 494 "xkbparse.y"
+ { (yyval.key)= KeyDeclCreate((yyvsp[(1) - (1)].str),NULL); }
+ break;
+
+ case 98:
+
+/* Line 1455 of yacc.c */
+#line 496 "xkbparse.y"
+ { (yyval.key)= KeyDeclCreate(NULL,(yyvsp[(2) - (3)].expr)); }
+ break;
+
+ case 99:
+
+/* Line 1455 of yacc.c */
+#line 500 "xkbparse.y"
+ { (yyval.overlay)= OverlayDeclCreate((yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].olKey)); }
+ break;
+
+ case 100:
+
+/* Line 1455 of yacc.c */
+#line 504 "xkbparse.y"
+ {
+ (yyval.olKey)= (OverlayKeyDef *)
+ AppendStmt(&(yyvsp[(1) - (3)].olKey)->common,&(yyvsp[(3) - (3)].olKey)->common);
+ }
+ break;
+
+ case 101:
+
+/* Line 1455 of yacc.c */
+#line 509 "xkbparse.y"
+ { (yyval.olKey)= (yyvsp[(1) - (1)].olKey); }
+ break;
+
+ case 102:
+
+/* Line 1455 of yacc.c */
+#line 513 "xkbparse.y"
+ { (yyval.olKey)= OverlayKeyCreate((yyvsp[(1) - (3)].str),(yyvsp[(3) - (3)].str)); }
+ break;
+
+ case 103:
+
+/* Line 1455 of yacc.c */
+#line 517 "xkbparse.y"
+ { (yyval.outline)=(OutlineDef *)AppendStmt(&(yyvsp[(1) - (3)].outline)->common,&(yyvsp[(3) - (3)].outline)->common);}
+ break;
+
+ case 104:
+
+/* Line 1455 of yacc.c */
+#line 519 "xkbparse.y"
+ { (yyval.outline)= (yyvsp[(1) - (1)].outline); }
+ break;
+
+ case 105:
+
+/* Line 1455 of yacc.c */
+#line 523 "xkbparse.y"
+ { (yyval.outline)= OutlineCreate(None,(yyvsp[(2) - (3)].expr)); }
+ break;
+
+ case 106:
+
+/* Line 1455 of yacc.c */
+#line 525 "xkbparse.y"
+ { (yyval.outline)= OutlineCreate((yyvsp[(1) - (5)].sval),(yyvsp[(4) - (5)].expr)); }
+ break;
+
+ case 107:
+
+/* Line 1455 of yacc.c */
+#line 527 "xkbparse.y"
+ { (yyval.outline)= OutlineCreate((yyvsp[(1) - (3)].sval),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 108:
+
+/* Line 1455 of yacc.c */
+#line 531 "xkbparse.y"
+ { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); }
+ break;
+
+ case 109:
+
+/* Line 1455 of yacc.c */
+#line 533 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 110:
+
+/* Line 1455 of yacc.c */
+#line 537 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprCoord,TypeUnknown);
+ expr->value.coord.x= (yyvsp[(2) - (5)].ival);
+ expr->value.coord.y= (yyvsp[(4) - (5)].ival);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 111:
+
+/* Line 1455 of yacc.c */
+#line 547 "xkbparse.y"
+ { (yyval.doodad)= DoodadCreate((yyvsp[(1) - (6)].uval),(yyvsp[(2) - (6)].sval),(yyvsp[(4) - (6)].var)); }
+ break;
+
+ case 112:
+
+/* Line 1455 of yacc.c */
+#line 550 "xkbparse.y"
+ { (yyval.uval)= XkbTextDoodad; }
+ break;
+
+ case 113:
+
+/* Line 1455 of yacc.c */
+#line 551 "xkbparse.y"
+ { (yyval.uval)= XkbOutlineDoodad; }
+ break;
+
+ case 114:
+
+/* Line 1455 of yacc.c */
+#line 552 "xkbparse.y"
+ { (yyval.uval)= XkbSolidDoodad; }
+ break;
+
+ case 115:
+
+/* Line 1455 of yacc.c */
+#line 553 "xkbparse.y"
+ { (yyval.uval)= XkbLogoDoodad; }
+ break;
+
+ case 116:
+
+/* Line 1455 of yacc.c */
+#line 556 "xkbparse.y"
+ { (yyval.sval)= (yyvsp[(1) - (1)].sval); }
+ break;
+
+ case 117:
+
+/* Line 1455 of yacc.c */
+#line 557 "xkbparse.y"
+ { (yyval.sval)= (yyvsp[(1) - (1)].sval); }
+ break;
+
+ case 118:
+
+/* Line 1455 of yacc.c */
+#line 561 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"action",False); }
+ break;
+
+ case 119:
+
+/* Line 1455 of yacc.c */
+#line 563 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"interpret",False); }
+ break;
+
+ case 120:
+
+/* Line 1455 of yacc.c */
+#line 565 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"type",False); }
+ break;
+
+ case 121:
+
+/* Line 1455 of yacc.c */
+#line 567 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"key",False); }
+ break;
+
+ case 122:
+
+/* Line 1455 of yacc.c */
+#line 569 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"group",False); }
+ break;
+
+ case 123:
+
+/* Line 1455 of yacc.c */
+#line 571 "xkbparse.y"
+ {(yyval.sval)=XkbInternAtom(NULL,"modifier_map",False);}
+ break;
+
+ case 124:
+
+/* Line 1455 of yacc.c */
+#line 573 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"indicator",False); }
+ break;
+
+ case 125:
+
+/* Line 1455 of yacc.c */
+#line 575 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"shape",False); }
+ break;
+
+ case 126:
+
+/* Line 1455 of yacc.c */
+#line 577 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"row",False); }
+ break;
+
+ case 127:
+
+/* Line 1455 of yacc.c */
+#line 579 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"section",False); }
+ break;
+
+ case 128:
+
+/* Line 1455 of yacc.c */
+#line 581 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"text",False); }
+ break;
+
+ case 129:
+
+/* Line 1455 of yacc.c */
+#line 584 "xkbparse.y"
+ { (yyval.uval)= (yyvsp[(1) - (1)].uval); }
+ break;
+
+ case 130:
+
+/* Line 1455 of yacc.c */
+#line 585 "xkbparse.y"
+ { (yyval.uval)= MergeDefault; }
+ break;
+
+ case 131:
+
+/* Line 1455 of yacc.c */
+#line 588 "xkbparse.y"
+ { (yyval.uval)= MergeDefault; }
+ break;
+
+ case 132:
+
+/* Line 1455 of yacc.c */
+#line 589 "xkbparse.y"
+ { (yyval.uval)= MergeAugment; }
+ break;
+
+ case 133:
+
+/* Line 1455 of yacc.c */
+#line 590 "xkbparse.y"
+ { (yyval.uval)= MergeOverride; }
+ break;
+
+ case 134:
+
+/* Line 1455 of yacc.c */
+#line 591 "xkbparse.y"
+ { (yyval.uval)= MergeReplace; }
+ break;
+
+ case 135:
+
+/* Line 1455 of yacc.c */
+#line 592 "xkbparse.y"
+ { (yyval.uval)= MergeAltForm; }
+ break;
+
+ case 136:
+
+/* Line 1455 of yacc.c */
+#line 595 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 137:
+
+/* Line 1455 of yacc.c */
+#line 596 "xkbparse.y"
+ { (yyval.expr)= NULL; }
+ break;
+
+ case 138:
+
+/* Line 1455 of yacc.c */
+#line 600 "xkbparse.y"
+ { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); }
+ break;
+
+ case 139:
+
+/* Line 1455 of yacc.c */
+#line 602 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 140:
+
+/* Line 1455 of yacc.c */
+#line 606 "xkbparse.y"
+ { (yyval.expr)= ExprCreateBinary(OpDivide,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 141:
+
+/* Line 1455 of yacc.c */
+#line 608 "xkbparse.y"
+ { (yyval.expr)= ExprCreateBinary(OpAdd,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 142:
+
+/* Line 1455 of yacc.c */
+#line 610 "xkbparse.y"
+ { (yyval.expr)= ExprCreateBinary(OpSubtract,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 143:
+
+/* Line 1455 of yacc.c */
+#line 612 "xkbparse.y"
+ { (yyval.expr)= ExprCreateBinary(OpMultiply,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 144:
+
+/* Line 1455 of yacc.c */
+#line 614 "xkbparse.y"
+ { (yyval.expr)= ExprCreateBinary(OpAssign,(yyvsp[(1) - (3)].expr),(yyvsp[(3) - (3)].expr)); }
+ break;
+
+ case 145:
+
+/* Line 1455 of yacc.c */
+#line 616 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 146:
+
+/* Line 1455 of yacc.c */
+#line 620 "xkbparse.y"
+ { (yyval.expr)= ExprCreateUnary(OpNegate,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); }
+ break;
+
+ case 147:
+
+/* Line 1455 of yacc.c */
+#line 622 "xkbparse.y"
+ { (yyval.expr)= ExprCreateUnary(OpUnaryPlus,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); }
+ break;
+
+ case 148:
+
+/* Line 1455 of yacc.c */
+#line 624 "xkbparse.y"
+ { (yyval.expr)= ExprCreateUnary(OpNot,TypeBoolean,(yyvsp[(2) - (2)].expr)); }
+ break;
+
+ case 149:
+
+/* Line 1455 of yacc.c */
+#line 626 "xkbparse.y"
+ { (yyval.expr)= ExprCreateUnary(OpInvert,(yyvsp[(2) - (2)].expr)->type,(yyvsp[(2) - (2)].expr)); }
+ break;
+
+ case 150:
+
+/* Line 1455 of yacc.c */
+#line 628 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 151:
+
+/* Line 1455 of yacc.c */
+#line 630 "xkbparse.y"
+ { (yyval.expr)= ActionCreate((yyvsp[(1) - (4)].sval),(yyvsp[(3) - (4)].expr)); }
+ break;
+
+ case 152:
+
+/* Line 1455 of yacc.c */
+#line 632 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 153:
+
+/* Line 1455 of yacc.c */
+#line 634 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(2) - (3)].expr); }
+ break;
+
+ case 154:
+
+/* Line 1455 of yacc.c */
+#line 638 "xkbparse.y"
+ { (yyval.expr)= (ExprDef *)AppendStmt(&(yyvsp[(1) - (3)].expr)->common,&(yyvsp[(3) - (3)].expr)->common); }
+ break;
+
+ case 155:
+
+/* Line 1455 of yacc.c */
+#line 640 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 156:
+
+/* Line 1455 of yacc.c */
+#line 644 "xkbparse.y"
+ { (yyval.expr)= ActionCreate((yyvsp[(1) - (4)].sval),(yyvsp[(3) - (4)].expr)); }
+ break;
+
+ case 157:
+
+/* Line 1455 of yacc.c */
+#line 648 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprIdent,TypeUnknown);
+ expr->value.str= (yyvsp[(1) - (1)].sval);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 158:
+
+/* Line 1455 of yacc.c */
+#line 655 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprFieldRef,TypeUnknown);
+ expr->value.field.element= (yyvsp[(1) - (3)].sval);
+ expr->value.field.field= (yyvsp[(3) - (3)].sval);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 159:
+
+/* Line 1455 of yacc.c */
+#line 663 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprArrayRef,TypeUnknown);
+ expr->value.array.element= None;
+ expr->value.array.field= (yyvsp[(1) - (4)].sval);
+ expr->value.array.entry= (yyvsp[(3) - (4)].expr);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 160:
+
+/* Line 1455 of yacc.c */
+#line 672 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprArrayRef,TypeUnknown);
+ expr->value.array.element= (yyvsp[(1) - (6)].sval);
+ expr->value.array.field= (yyvsp[(3) - (6)].sval);
+ expr->value.array.entry= (yyvsp[(5) - (6)].expr);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 161:
+
+/* Line 1455 of yacc.c */
+#line 683 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprValue,TypeString);
+ expr->value.str= (yyvsp[(1) - (1)].sval);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 162:
+
+/* Line 1455 of yacc.c */
+#line 690 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprValue,TypeInt);
+ expr->value.ival= (yyvsp[(1) - (1)].ival);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 163:
+
+/* Line 1455 of yacc.c */
+#line 697 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprValue,TypeFloat);
+ expr->value.ival= (yyvsp[(1) - (1)].ival);
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 164:
+
+/* Line 1455 of yacc.c */
+#line 704 "xkbparse.y"
+ {
+ ExprDef *expr;
+ expr= ExprCreate(ExprValue,TypeKeyName);
+ memset(expr->value.keyName,0,5);
+ strncpy(expr->value.keyName,(yyvsp[(1) - (1)].str),4);
+ free((yyvsp[(1) - (1)].str));
+ (yyval.expr)= expr;
+ }
+ break;
+
+ case 165:
+
+/* Line 1455 of yacc.c */
+#line 714 "xkbparse.y"
+ { (yyval.expr)= (yyvsp[(1) - (1)].expr); }
+ break;
+
+ case 166:
+
+/* Line 1455 of yacc.c */
+#line 715 "xkbparse.y"
+ { (yyval.expr)= NULL; }
+ break;
+
+ case 167:
+
+/* Line 1455 of yacc.c */
+#line 719 "xkbparse.y"
+ { (yyval.expr)= AppendKeysymList((yyvsp[(1) - (3)].expr),(KeySym)(yyvsp[(3) - (3)].uval)); }
+ break;
+
+ case 168:
+
+/* Line 1455 of yacc.c */
+#line 721 "xkbparse.y"
+ { (yyval.expr)= CreateKeysymList((KeySym)(yyvsp[(1) - (1)].uval)); }
+ break;
+
+ case 169:
+
+/* Line 1455 of yacc.c */
+#line 725 "xkbparse.y"
+ {
+ KeySym sym;
+ if (LookupKeysym(scanStr,&sym))
+ (yyval.uval)= sym;
+ else {
+ char buf[120];
+ snprintf(buf, sizeof(buf),
+ "expected keysym, got %s",
+ uStringText(scanStr));
+ yyerror(buf);
+ yynerrs++;
+ (yyval.uval)= NoSymbol;
+ }
+ }
+ break;
+
+ case 170:
+
+/* Line 1455 of yacc.c */
+#line 740 "xkbparse.y"
+ {
+ (yyval.uval)= XK_section;
+ }
+ break;
+
+ case 171:
+
+/* Line 1455 of yacc.c */
+#line 744 "xkbparse.y"
+ {
+ if ((yyvsp[(1) - (1)].ival)<10) (yyval.uval)= (yyvsp[(1) - (1)].ival)+'0'; /* XK_0 .. XK_9 */
+ else (yyval.uval)= (yyvsp[(1) - (1)].ival);
+ }
+ break;
+
+ case 172:
+
+/* Line 1455 of yacc.c */
+#line 750 "xkbparse.y"
+ { (yyval.ival)= -(yyvsp[(2) - (2)].ival); }
+ break;
+
+ case 173:
+
+/* Line 1455 of yacc.c */
+#line 751 "xkbparse.y"
+ { (yyval.ival)= (yyvsp[(1) - (1)].ival); }
+ break;
+
+ case 174:
+
+/* Line 1455 of yacc.c */
+#line 754 "xkbparse.y"
+ { (yyval.ival)= scanInt; }
+ break;
+
+ case 175:
+
+/* Line 1455 of yacc.c */
+#line 755 "xkbparse.y"
+ { (yyval.ival)= scanInt*XkbGeomPtsPerMM; }
+ break;
+
+ case 176:
+
+/* Line 1455 of yacc.c */
+#line 758 "xkbparse.y"
+ { (yyval.ival)= scanInt; }
+ break;
+
+ case 177:
+
+/* Line 1455 of yacc.c */
+#line 761 "xkbparse.y"
+ { (yyval.ival)= scanInt; }
+ break;
+
+ case 178:
+
+/* Line 1455 of yacc.c */
+#line 764 "xkbparse.y"
+ { (yyval.str)= scanStr; scanStr= NULL; }
+ break;
+
+ case 179:
+
+/* Line 1455 of yacc.c */
+#line 767 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,scanStr,False); }
+ break;
+
+ case 180:
+
+/* Line 1455 of yacc.c */
+#line 768 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,"default",False); }
+ break;
+
+ case 181:
+
+/* Line 1455 of yacc.c */
+#line 771 "xkbparse.y"
+ { (yyval.sval)= XkbInternAtom(NULL,scanStr,False); }
+ break;
+
+ case 182:
+
+/* Line 1455 of yacc.c */
+#line 774 "xkbparse.y"
+ { (yyval.str)= (yyvsp[(1) - (1)].str); }
+ break;
+
+ case 183:
+
+/* Line 1455 of yacc.c */
+#line 775 "xkbparse.y"
+ { (yyval.str)= NULL; }
+ break;
+
+ case 184:
+
+/* Line 1455 of yacc.c */
+#line 778 "xkbparse.y"
+ { (yyval.str)= scanStr; scanStr= NULL; }
+ break;
+
+
+
+/* Line 1455 of yacc.c */
+#line 3310 "xkbparse.c"
+ default: break;
+ }
+ YY_SYMBOL_PRINT ("-> $$ =", yyr1[yyn], &yyval, &yyloc);
+
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
+
+ *++yyvsp = yyval;
+
+ /* Now `shift' the result of the reduction. Determine what state
+ that goes to, based on the state we popped back to and the rule
+ number reduced by. */
+
+ yyn = yyr1[yyn];
+
+ yystate = yypgoto[yyn - YYNTOKENS] + *yyssp;
+ if (0 <= yystate && yystate <= YYLAST && yycheck[yystate] == *yyssp)
+ yystate = yytable[yystate];
+ else
+ yystate = yydefgoto[yyn - YYNTOKENS];
+
+ goto yynewstate;
+
+
+/*------------------------------------.
+| yyerrlab -- here on detecting error |
+`------------------------------------*/
+yyerrlab:
+ /* If not already recovering from an error, report this error. */
+ if (!yyerrstatus)
+ {
+ ++yynerrs;
+#if ! YYERROR_VERBOSE
+ yyerror (YY_("syntax error"));
+#else
+ {
+ YYSIZE_T yysize = yysyntax_error (0, yystate, yychar);
+ if (yymsg_alloc < yysize && yymsg_alloc < YYSTACK_ALLOC_MAXIMUM)
+ {
+ YYSIZE_T yyalloc = 2 * yysize;
+ if (! (yysize <= yyalloc && yyalloc <= YYSTACK_ALLOC_MAXIMUM))
+ yyalloc = YYSTACK_ALLOC_MAXIMUM;
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+ yymsg = (char *) YYSTACK_ALLOC (yyalloc);
+ if (yymsg)
+ yymsg_alloc = yyalloc;
+ else
+ {
+ yymsg = yymsgbuf;
+ yymsg_alloc = sizeof yymsgbuf;
+ }
+ }
+
+ if (0 < yysize && yysize <= yymsg_alloc)
+ {
+ (void) yysyntax_error (yymsg, yystate, yychar);
+ yyerror (yymsg);
+ }
+ else
+ {
+ yyerror (YY_("syntax error"));
+ if (yysize != 0)
+ goto yyexhaustedlab;
+ }
+ }
+#endif
+ }
+
+
+
+ if (yyerrstatus == 3)
+ {
+ /* If just tried and failed to reuse lookahead token after an
+ error, discard it. */
+
+ if (yychar <= YYEOF)
+ {
+ /* Return failure if at end of input. */
+ if (yychar == YYEOF)
+ YYABORT;
+ }
+ else
+ {
+ yydestruct ("Error: discarding",
+ yytoken, &yylval);
+ yychar = YYEMPTY;
+ }
+ }
+
+ /* Else will try to reuse lookahead token after shifting the error
+ token. */
+ goto yyerrlab1;
+
+
+/*---------------------------------------------------.
+| yyerrorlab -- error raised explicitly by YYERROR. |
+`---------------------------------------------------*/
+yyerrorlab:
+
+ /* Pacify compilers like GCC when the user code never invokes
+ YYERROR and the label yyerrorlab therefore never appears in user
+ code. */
+ if (/*CONSTCOND*/ 0)
+ goto yyerrorlab;
+
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYERROR. */
+ YYPOPSTACK (yylen);
+ yylen = 0;
+ YY_STACK_PRINT (yyss, yyssp);
+ yystate = *yyssp;
+ goto yyerrlab1;
+
+
+/*-------------------------------------------------------------.
+| yyerrlab1 -- common code for both syntax error and YYERROR. |
+`-------------------------------------------------------------*/
+yyerrlab1:
+ yyerrstatus = 3; /* Each real token shifted decrements this. */
+
+ for (;;)
+ {
+ yyn = yypact[yystate];
+ if (yyn != YYPACT_NINF)
+ {
+ yyn += YYTERROR;
+ if (0 <= yyn && yyn <= YYLAST && yycheck[yyn] == YYTERROR)
+ {
+ yyn = yytable[yyn];
+ if (0 < yyn)
+ break;
+ }
+ }
+
+ /* Pop the current state because it cannot handle the error token. */
+ if (yyssp == yyss)
+ YYABORT;
+
+
+ yydestruct ("Error: popping",
+ yystos[yystate], yyvsp);
+ YYPOPSTACK (1);
+ yystate = *yyssp;
+ YY_STACK_PRINT (yyss, yyssp);
+ }
+
+ *++yyvsp = yylval;
+
+
+ /* Shift the error token. */
+ YY_SYMBOL_PRINT ("Shifting", yystos[yyn], yyvsp, yylsp);
+
+ yystate = yyn;
+ goto yynewstate;
+
+
+/*-------------------------------------.
+| yyacceptlab -- YYACCEPT comes here. |
+`-------------------------------------*/
+yyacceptlab:
+ yyresult = 0;
+ goto yyreturn;
+
+/*-----------------------------------.
+| yyabortlab -- YYABORT comes here. |
+`-----------------------------------*/
+yyabortlab:
+ yyresult = 1;
+ goto yyreturn;
+
+#if !defined(yyoverflow) || YYERROR_VERBOSE
+/*-------------------------------------------------.
+| yyexhaustedlab -- memory exhaustion comes here. |
+`-------------------------------------------------*/
+yyexhaustedlab:
+ yyerror (YY_("memory exhausted"));
+ yyresult = 2;
+ /* Fall through. */
+#endif
+
+yyreturn:
+ if (yychar != YYEMPTY)
+ yydestruct ("Cleanup: discarding lookahead",
+ yytoken, &yylval);
+ /* Do not reclaim the symbols of the rule which action triggered
+ this YYABORT or YYACCEPT. */
+ YYPOPSTACK (yylen);
+ YY_STACK_PRINT (yyss, yyssp);
+ while (yyssp != yyss)
+ {
+ yydestruct ("Cleanup: popping",
+ yystos[*yyssp], yyvsp);
+ YYPOPSTACK (1);
+ }
+#ifndef yyoverflow
+ if (yyss != yyssa)
+ YYSTACK_FREE (yyss);
+#endif
+#if YYERROR_VERBOSE
+ if (yymsg != yymsgbuf)
+ YYSTACK_FREE (yymsg);
+#endif
+ /* Make sure YYID is used. */
+ return YYID (yyresult);
+}
+
+
+
+/* Line 1675 of yacc.c */
+#line 780 "xkbparse.y"
+
+void
+yyerror(const char *s)
+{
+ if (warningLevel>0) {
+ (void)fprintf(stderr,"%s: line %d of %s\n",s,lineNum,
+ (scanFile?scanFile:"(unknown)"));
+ if ((scanStr)&&(warningLevel>3))
+ (void)fprintf(stderr,"last scanned symbol is: %s\n",scanStr);
+ }
+ return;
+}
+
+
+int
+yywrap(void)
+{
+ return 1;
+}
+
+
diff --git a/xorg-server/ChangeLog b/xorg-server/ChangeLog index 838924c38..67410e90e 100644 --- a/xorg-server/ChangeLog +++ b/xorg-server/ChangeLog @@ -1,3 +1,611 @@ +commit 4257023c1e40387aff096d5f00d746d3f7a521b4 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 14:05:43 2009 +1000 + + xserver 1.7.0 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit 15b4faff281ad8abce6b32fe2fc855eb6da42476 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Oct 1 21:19:11 2009 +1000 + + dix: force a minimum of 0 for screen coordinates. + + Currently the root coordinates may fall into ]-1..0] if the subpixel + remainder is less than 0. Screen coordinates mustn't go below 0, so use + miPointerSetPosition to cap off the remainder if the coordinates are below + 0. + + This is cheating a bit, a more comprehensive solution to deal with subpixels + correctly when crossing screens is needed. For now, this'll do. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Acked-by: Simon Thum <simon.thum@gmx.de> + (cherry picked from commit 45f447dafded5adfe11b7df3325c2d8f6ae0639b) + +commit 3788113618977bdc83e3ec1e7ca3160bad9a0d13 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Oct 2 09:34:24 2009 +1000 + + configure: if xnest was requested but modules weren't found, fail. + + Tested-by: Xavier Chantry <shiningxc@gmail.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Acked-by: Julien Cristau <jcristau@debian.org> + (cherry picked from commit 64fe5784b49347e1fd27b0c463be5c16557594c9) + +commit c3034dc3af450802dda156136d9fabbc1cc58836 +Author: Dave Airlie <airlied@redhat.com> +Date: Thu Oct 1 15:25:55 2009 +1000 + + rotate: drop unwrapping inside block handler. + + Keith has shown half the block handlers wrappers are wrong, also + dynamic wrapping/unwrapping from what I can see will happen after + the drivers, so its really accidental ABI, that we can't change + now without modifing drivers. So be safe for 1.7. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + Declared-as-sane-by: Keith Packard <keithp@keithp.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 3ebb82d61c2b56e8f7145443a552a4e913bbfc80) + +commit 47c0b80915d67346ec63b36b659a96b77e777a71 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Oct 1 10:03:42 2009 +1000 + + render: Fix crash in RenderAddGlyphs (#23645) + + This patch fixes two bugs: + size is calculated as glyph height * padded_width. If the client submits + garbage, this may get above INT_MAX, resulting in a negative size if size is + unsigned. The sanity checks don't trigger for negative sizes and the server + goes and writes into random memory locations. + + If the client submits glyphs with a width or height 0, the destination + pixmap is NULL, causing a null-pointer dereference. Since there's nothing to + composite if the width/height is 0, we might as well skip the whole thing + anyway. + + Tested with Xvfb, Xephyr and Xorg. + + X.Org Bug 23645 <http://bugs.freedesktop.org/show_bug.cgi?id=23645> + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Reviewed-by: Keith Packard <keithp@keithp.com> + (cherry picked from commit 622fc98fd08aba98369e6933c3ab8c9ff85385d5) + +commit 30ebee3bfcadf915be98d407610c615e3e00f9c1 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Oct 1 15:22:19 2009 +1000 + + render: set the glyph picture to NULL by default. + + In a follow-up patch we may have glyphs with a NULL picture. To cope with + that, always set the pictures for glyphs to NULL at creation time and cope + with cleaning up such glyphs. Also, since compositing a NULL source doesn't + do a lot anyway, skip trying to do so. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Reviewed-by: Keith Packard <keithp@keithp.com> + (cherry picked from commit 758ab55d2defc78d0169fd61a7036eb9f889e9e7) + +commit 8026c5a08584419be3adecd5965dd03e793ddf81 +Author: Michel Dänzer <daenzer@vmware.com> +Date: Thu Oct 1 15:17:11 2009 +1000 + + exa: avoid infinite loops if UTS sw fallbacks. + + The upload in finish access can cause an infinite loop if + UTS returns FALSE in here. + + Fixes fd.o bug #24246. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit b5fcc5553eb784c9f4826936e839079c0cdee55a) + +commit e182c1b4368c6958579732dd4ddc59de2b46359b +Author: Keith Packard <keithp@keithp.com> +Date: Wed Sep 30 11:40:19 2009 -0700 + + Re-fix DGA removal. + + Removing DGA ended up breaking any drivers calling into the old + xf86DiDGAInit function as it tried to see if DGA was already enabled + and ended up crashing if the VT wasn't completely initialized. Oops. + + Also, if the driver initializes DGA itself, have the DiDGA + initialization overwrite that information as the DiDGA code will call + ReInit on mode detect. + + Signed-off-by: Keith Packard <keithp@keithp.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit db98b26ee145f70e732e2cf4a6ac3de77fdf4adc) + +commit 369b5d526b699cd1c5cd38bb5a823ec66c5286ef +Author: Dave Airlie <airlied@redhat.com> +Date: Tue Sep 29 11:49:09 2009 +1000 + + dix/glx/composite: consolidate visual resize in one place. + + The previous code was copied and in both cases incorrectly fixed + up the colormaps after resizing the visuals, this patch consolidates + the visual resize + colormaps fixups in one place. This version + also consolidates the vid allocation for the DepthPtr inside the + function. + + I'm not 100% sure colormap.[ch] is the correct place for this but + visuals are mostly created in fb and I know thats not the place to + be resizing them. + + Fixes fd.o bug #19470. + + Signed-off-by: Dave Airlie <airlied@redhat.com> + Reviewed-by: Keith Packard <keithp@keithp.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 6ffda5aae75272fabdc27d6f693ae827be119e95) + +commit d3ba814884154150ed3e6a71254dec7312593488 +Author: Michel Dänzer <daenzer@vmware.com> +Date: Tue Sep 29 08:56:59 2009 +0200 + + Fix ShmPutImage non-ZPixmap case. + + Fixes http://bugs.freedesktop.org/show_bug.cgi?id=23298 . + (cherry picked from commit 11817a881cb93a89788105d1e575a468f2a8d27c) + +commit 8fc0d54cbaf791d947c7bab23f2e982cabd7c958 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 14:18:45 2009 +1000 + + ephyr: if -parent is given, check for a trailing -screen. (#24144) + + If -parent is given, don't open up a new window if -screen is given as well. + The commandline option -screen allows to set the depth of the embedded + Xephry instance, even though width and height are autoscaled on -parent. + + This patch checks for a -screen parameter after -parent and - if one is + found - delays initializing the screen. The parent window id is stored + temporarily but re-set after a -screen argument. + The following command is thus valid: + + Xephyr -parent 1234 -screen 640x480@8 -screen 1024x768 + + It embeds the first 8-bit screen into window 1234 and opens up a new window + for the second screen. Multiple parent arguments are possible, the screens + are embedded in-order. + + X.Org Bug 24144 <http://bugs.freedesktop.org/show_bug.cgi?id=24144> + + Tested-by: Vic Lee + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 19be992d9dc542b61fa3f4fd32a09071c9e64880) + +commit 857ec3e6fff571398dfcd9b4728b5c38cbcd3fcb +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 13:59:25 2009 +1000 + + xfree86: use the DDC size if either width or height of DisplaySize is bogus. + + If either width or height of DisplaySize is invalid, assume that the + configuration is invalid and use the DDC-reported values instead. + + See Comment 9, Bug 9758. + http://bugs.freedesktop.org/show_bug.cgi?id=9758#c9 + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Acked-by: Dave Airlie <airlied@redhat.com> + (cherry picked from commit 83023ffd09a84ff48e6b99f57ebad101a00478db) + +commit 2d4bab18c0d894619f044f29769c67c2f63b540a +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed Sep 23 10:53:51 2009 +1000 + + render: Plug a memory leak in AddGlyph. (#23286) + + AddGlyph was missing the FreePicture() call that DeleteGlyph used, resulting + in a memory leak when more than one Glyph was added in a RenderAddGlyphs + request. + + Since the code in AddGlyph and DeleteGlyph is identical, move into a static + function to avoid such mistakes in the future. + + X.Org Bug 23286 <http://bugs.freedesktop.org/show_bug.cgi?id=23286> + (cherry picked from commit f772014c435f56db56520ca13ffa39431684f122) + +commit 290a9639db3e420ec4caf0e6aee9f7386724c765 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 21:05:11 2009 +1000 + + xserver 1.6.99.903 (xserver 1.7 RC3) + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit 8c83457c60a4e02ca61086c7218dcd0e054926ba +Merge: 6af44db b49dba3 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 16:48:46 2009 +1000 + + Merge remote branch 'origin/xorg-server-1.7-apple' into server-1.7-branch + +commit 6af44db315121ea24cec390d144514bf56908b2c +Author: Tilman Sauerbeck <tilman@code-monkey.de> +Date: Thu Sep 24 12:57:02 2009 +0200 + + configure: make XNEST default to auto. + + When we're checking whether to build Xnest, we're comparing the + variable to auto but before it never was assigned that. + + Signed-off-by: Tilman Sauerbeck <tilman@code-monkey.de> + + [Xnest was enabled to yes to increase build exposure and catch compiler + errors early. The requirements to Xnest are quite low and I expect most + developers have them, so Xnext will be enabled on most boxes. Anyone + missing those requires probably doesn't want to build Xnest anyway.] + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 3db28f92b0c810b452506abbed299a204c90ba0b) + +commit b49dba33f94b51ba9a14803f0d81ccde2cb778f8 +Author: Ben Byer <bbyer@freedesktop.org> +Date: Sun Sep 27 10:35:53 2009 -0700 + + Add (ok, fix) support for DTrace under OS X + (cherry picked from commit 8428a57184f542941d2c8c90e97d18e111a69dd2) + +commit cf2e3312cff3f341e9edba8c321a4ca7ffd8748e +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 23:09:51 2009 -0700 + + Rootless: Correct border rendering on parent-relative windows + + Resurected code from the punted RootlessPaintBackground/Border and added it conditionally to miPaintWindow + +commit dadab5a2279a19dcf709402d7f22f0cd48670db0 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 23:00:59 2009 -0700 + + XQuartz: Fix QuartzSetCursor to match the expected prototype. + +commit 54000bdcbca52a2de31f7c1a1147de6d8e9dbbb8 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 22:57:25 2009 -0700 + + XQuartz: Fix a bunch of compilation warnings about style + +commit 29cb904e4de2411a9b6dbe68694954788f0525f7 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 22:29:49 2009 -0700 + + XQuartz: Nuke TSM + + It's deprecated in SnowLeopard. Ben and I both have no idea what it is for. It says something about unicode input, but urxvt seems fine taking in unicode, so /shrug... bye. + +commit de6cee11e1c335a0e5f708e7641e81d3cfe52529 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 22:26:22 2009 -0700 + + XQuartz: Fix inverse map from mode_switch to alt + +commit 7e6640b55503b6ee797ab2589f7debcbfa531958 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 12:20:03 2009 +1000 + + Revert "alpha: kill xf86SlowBCopyToBus and xf86SlowBCopyFromBus" + + The vesa driver still uses slowbcopy_frombus and slowbcopy_tobus. + + This reverts commit 5ef53a94ce4e48e11de26290cd677266308640c8. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + +commit ceaa5c779ceed3de5ea53727649613be3133b24e +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 18:25:57 2009 -0700 + + XQuartz: Force a keymap resync on the first keypress to workaround XKB mucking with our keymap. + + We need to find a better way to work with XKB on this. + +commit a3dbde2de87ee4f577748a8c447501a3ea462559 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sun Sep 27 17:08:12 2009 -0700 + + XQuartz: Transition from xEvent based mieq to InternalEvent + +commit 4aeac52c495c4cf691de7ef7d9e4030e90b3c8b8 +Merge: 498135f 77099b9 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Mon Sep 28 09:54:53 2009 +1000 + + Merge remote branch 'origin/xorg-server-1.7-apple' into server-1.7-branch + +commit 498135f26e8504e103ffe4512acf6fddca8e92e8 +Author: Samuel Thibault <samuel.thibault@ens-lyon.org> +Date: Sun Sep 27 17:30:23 2009 +0200 + + xfree86: Hurd fix + + I hadn't paid attention that the parameters order had changed, here is a + trivial patch, please apply. + + Signed-off-by: Julien Cristau <jcristau@debian.org> + (cherry picked from commit 78ad6ca9a97440b74019c00a28144ea7d1e03431) + +commit 77099b933a0362d40a28f9afea46c5cc97c29e13 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sat Sep 26 23:41:45 2009 -0700 + + XQuartz: Stop checking version numbers of the bundle because CFBundleGetVersionNumber is gimpish + (cherry picked from commit 9f5bdd89608ec12012592ff395b82e954fbb4da8) + +commit 7958f6b75b3c6b8a827188af2e684f181bdd7688 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sat Sep 26 22:52:39 2009 -0700 + + XQuartz: Add pressure/tilt property labels + +commit 29b2d9cdf5095399b79d9ff2a2f12f5a9c49cf1f +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sat Sep 26 22:48:49 2009 -0700 + + XQuartz: Fix a brain-o array indexing problem + + /bop Peter + +commit fd1adc21a931e2dd1ff2e52b60a77c2153a30fe0 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sat Sep 26 22:17:09 2009 -0700 + + XQuartz: Nuke duplicate locks that make painful headaches + +commit 6e4fc5d066d9c1ea4fca444cfee1e73147c5fefb +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Sat Sep 26 22:13:49 2009 -0700 + + Xi: CopyKeyClass is not static for XQuartz + +commit e0e2eaf1f30ebce4c0ff28416259d8e976fdf0d7 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Fri Aug 7 00:02:21 2009 -0700 + + XQuartz: Use internal xshm header for new xextproto + (cherry picked from commit 1755239330c0bdac820d88a3e06ff391d65f29be) + (cherry picked from commit 697be460d0e555e2c75eed6889293650e02d423c) + +commit 1a0dfde2d102d845f1ceda66ad7a078aa1b42ef9 +Author: Jeremy Huddleston <jeremyhu@freedesktop.org> +Date: Wed Sep 23 17:41:28 2009 -0700 + + XQuartz: GLX capabilities: Allow 16bit accumulation buffers + + http://xquartz.macosforge.org/trac/ticket/308 + (cherry picked from commit e9e63a2118b76b6c31c4081fec08a99e4d796e22) + +commit 0c6423b3d52af85cd990811f7be982c0b6ed7c32 +Author: Michel Dänzer <daenzer@vmware.com> +Date: Sun Sep 27 02:08:10 2009 +0200 + + EXA: Fix mixed pixmaps crash with missing / failing UploadToScreen hook. + + For the recent mixed pixmaps changes, I failed to realize (or hit in my + testing) a problem which can occur if the driver doesn't provide an + UploadToScreen hook or provides one which can fail: There can be a crash + in exaMemcpyBox() because exaCopyDirtyToFb() passes pExaPixmap->fb_ptr to + exaCopyDirty(), but that's normally NULL with driver allocated pixmaps. + + The solution is to make exaCopyDirty*() no longer rely on pExaPixmap->fb_ptr + but use pPixmap->devPrivate.ptr after PrepareAccess instead. + + Fixes http://bugs.freedesktop.org/show_bug.cgi?id=24167 . + (cherry picked from commit 73ae547d5e687ef10dea45801fc627e10ac4b659) + +commit bb7c26e38c262614c5d1c21fc7a04c71a9028e51 +Author: Kevin E Martin <kem@redhat.com> +Date: Sat Sep 26 13:10:54 2009 +1000 + + dmx: undefine MITSHM, move undefs to miinitext.c. + + This patch undefines MITSHM for dmx - we don't support the required + screen->ModifyPixmapHeaders. All undefines are moved from dmx-config to + miinitext.c, where they belong. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit c9ec2bab2f258798fd6e6676698c732f09571a60) + +commit 72f0194be1558f244bad85197ccc50e17561df50 +Author: Kevin E Martin <kem@redhat.com> +Date: Sat Sep 26 13:09:52 2009 +1000 + + dmx: reshuffle linker order to avoid errors when MITSHM is undefined. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit fc9d733bab3ff0e4e51b19c73b66196dca563a70) + +commit e4edb4f2e6ca960b68629783459920faa86d8671 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Fri Sep 25 14:53:33 2009 +1000 + + dmx: core events are always in screen coordinates when passed to GPE. + + This fixes input in dmx, the pointer appears at the right positions to the + clients now. + + Also mark the spot where we pass in the button state as valuator to GPE + with a FIXME. (??) + + Tested-by: Kevin Martin + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit e7c2598f565e8252dd66ee3e6212b310856476cb) + +commit 7c9e0b07780b664ebbcee2d6be4bce645cb8c5b2 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Sep 24 14:07:26 2009 +1000 + + Xi: update axisVals with the right subpixel data. + + Subpixel data in data_frac is stored as FP32.32, hence we need to get that + down again before adding it to the current value. + + Reported-by: Thomas Jaeger + Tested-by: Thomas Jaeger + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 9bd08c690fc687c4d69bb70536f3079a9184476d) + +commit 1745808c2939d7dc08d3d8acae425e5eeb6a16ca +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed Sep 23 21:49:11 2009 +1000 + + configure: Unify all library defines that require a specific version. + + This patch moves all libraries that require a specific version into a single + location instead or duplicating them across the configure.ac file. + Libraries that do not require specific versions are left where they are. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 43a2eb794f19a2ba56d653f465fc5f6b2ff0d3d3) + +commit e5371c7fc895c51092bd5b2d303e4835c123bd5c +Author: Michel Dänzer <daenzer@vmware.com> +Date: Sat Sep 26 01:59:39 2009 +0200 + + EXA: Extend mixed pixmaps scheme to allow driver PrepareAccess hook to fail. + + If the PrepareAccess hook fails, use the DownloadFromScreen hook to retrieve + driver pixmap contents to a system RAM copy, perform software rendering on that + and copy the results back using the UploadToScreen hook. Use the classic + migration logic to minimize transfers (which as a bonus allows slightly + cleaning up some of the existing mixed pixmap code). + + This enables things that weren't possible before with driver-allocated pixmap + storage: If some (or all) GPU pixmap storage can't be mapped directly by the + CPU, this can be handled between the PrepareAccess and + DownloadFrom/UploadToScreen hooks, e.g.: + + * Radeon KMS on big endian machines can fail PrepareAccess if the pixmap + requires byte-swapping and swap bytes in DownloadFrom/UploadToScreen. + * Environments where GPU and CPU don't have a shared address space at all. + Here the driver PrepareAccess hook will always fail and leave all transfers + between GPU / CPU storage to the Download/From/UploadToScreen hooks. + + Drivers which can handle all pixmaps in the PrepareAccess hook should notice + little if any difference. + (cherry picked from commit 1818cbd70fc1f2e1487b4c678e67e28f1265c0ef) + +commit cecd484fbb3db273472d0bf0ec45d8604ff0cde2 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Tue Sep 22 20:34:54 2009 +1000 + + Require libXext >= 1.0.99.4 + + Reported-by: Tilman Sauerbeck + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 9fa73be9fa543a686ea35c861084f5af37d44caa) + +commit f188fabfe264dfec1950c168e2d9c22f13797b93 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed Sep 23 11:43:27 2009 +1000 + + kdrive: plug two memory leaks when freeing the KdKeyboard/Pointer. + + xkbRules, xkbModel and xkbLayout are strdup'd in KdNewKeyboard, need to be + freed. + + The ephyr driver strdups the name on top of the already allocated + kdrive-assigned name. Memory must be freed beforehand. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit a9c274df5c37cb4ece6449e934342d8ff8e61705) + +commit 48ab48a6ce12605c7353b45dff4e3a4338b9132e +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed Sep 23 11:44:12 2009 +1000 + + dix: plug memory leak in DeviceEnterLeaveEvents. + + 'event' must be freed before exiting. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit fd913136732ff14a0484ca28f60ac1fbf49be81d) + +commit 9e39491166eb4540bbc72e963e673c976301e936 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Thu Sep 24 14:05:52 2009 +1000 + + Xi: fix length calculation for ValuatorState in QueryDeviceState reply. + + The length field needs to include the bytes required for the valuators + (INT32) as well. + + The reply length has the right value and since the valuator state is always + last, clients didn't notice the wrong offset. + + Tested-by: Thomas Jaeger + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 6ee796e9bb4e46782b50a69c7b4fa5b49576f139) + +commit a9e2f7ac15f426560ac01689ec66f2db32424884 +Author: Peter Hutterer <peter.hutterer@who-t.net> +Date: Wed Sep 23 12:32:44 2009 +1000 + + configure: fix up tslib check once again. + + This patch addresses two issues: + The check for HAVE_TSLIB = xauto can never be true, the check has been + corrected to TSLIB = xauto. + + Pre-pkgconfig versions of tslib fail to be found, this patch restores the + additional AC_CHECK_LIB. However, the pgk-config check must happen before + AC_CHECK_LIB, as AC_CHECK_LIB does not seem to honour the LD_LIBRARY_PATH. + Thus, if tslib is installed outside of the default paths, AC_CHECK_LIB + fails. + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + Acked--by: Daniel Stone <daniel@fooishbar.org> + (cherry picked from commit 3b5bbb149d4c932d9624336f5cbe9fe71c87bea3) + +commit 1f74cfdeacb88b466d8f2005af191db30dde2a86 +Author: Thomas Jaeger <thjaeger@gmail.com> +Date: Tue Sep 22 20:16:21 2009 -0400 + + dix: report XI1 axis values correctly if first_valuator != 0 + + Signed-off-by: Thomas Jaeger <ThJaeger@gmail.com> + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 5402f18d9c3f7ba19cc05b3a814e3a9e94c8d551) + +commit 8867c60782909816826054ed0587094e58eb39e6 +Author: Michel Dänzer <daenzer@vmware.com> +Date: Wed Sep 23 13:10:05 2009 +0200 + + render: Don't add b8g8r8x8 format for depth 24. + + The components are required to be packed in the bottom of the pixel, so this + format can't fit in depth 24. + + Also fix up a comment for the addition of BGRA formats. + (cherry picked from commit ce1fe8ddb4a4dbe6cfd909e5b1b73b459d742bec) + +commit ac1490b651a251407e1bbc98e3ccd265a9e491b5 +Author: Michel Dänzer <daenzer@vmware.com> +Date: Wed Sep 23 08:24:06 2009 +0200 + + EXA: Fix some issues pointed out by clang. + + Remove dead variables, fix use of uninitialized values, that kind of thing. + (cherry picked from commit 096f21bb7a1217443d8a03529b1a2938518eb24f) + +commit 6b656c3498fa1bdbf93b2951b27cc8ff00e65990 +Author: Simon Thum <simon.thum@gmx.de> +Date: Mon Sep 21 15:23:27 2009 +0200 + + dix: move bounds check before access + + Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net> + (cherry picked from commit 824a09d856a5f750694e11d2fd2faaa3de705eaa) + commit 9c1a18377afdb919a648a96c4195113121902cfe Author: Peter Hutterer <peter.hutterer@who-t.net> Date: Tue Sep 22 12:44:19 2009 +1000 diff --git a/xorg-server/Xext/shm.c b/xorg-server/Xext/shm.c index d3393bfed..8a1defdb0 100644 --- a/xorg-server/Xext/shm.c +++ b/xorg-server/Xext/shm.c @@ -516,15 +516,40 @@ doShmPutImage(DrawablePtr dst, GCPtr pGC, char *data)
{
PixmapPtr pPixmap;
-
- pPixmap = GetScratchPixmapHeader(dst->pScreen, w, h, depth,
- BitsPerPixel(depth),
- PixmapBytePad(w, depth),
- data);
- if (!pPixmap)
- return;
- pGC->ops->CopyArea((DrawablePtr)pPixmap, dst, pGC, sx, sy, sw, sh, dx, dy);
- FreeScratchPixmapHeader(pPixmap);
+
+ if (format == ZPixmap || depth == 1) {
+ pPixmap = GetScratchPixmapHeader(dst->pScreen, w, h, depth,
+ BitsPerPixel(depth),
+ PixmapBytePad(w, depth),
+ data);
+ if (!pPixmap)
+ return;
+ pGC->ops->CopyArea((DrawablePtr)pPixmap, dst, pGC, sx, sy, sw, sh, dx, dy);
+ FreeScratchPixmapHeader(pPixmap);
+ } else {
+ GCPtr putGC = GetScratchGC(depth, dst->pScreen);
+
+ if (!putGC)
+ return;
+
+ pPixmap = (*dst->pScreen->CreatePixmap)(dst->pScreen, sw, sh, depth,
+ CREATE_PIXMAP_USAGE_SCRATCH);
+ if (!pPixmap) {
+ FreeScratchGC(putGC);
+ return;
+ }
+ ValidateGC(&pPixmap->drawable, putGC);
+ (*putGC->ops->PutImage)(&pPixmap->drawable, putGC, depth, -sx, -sy, w, h, 0,
+ (format == XYPixmap) ? XYPixmap : ZPixmap, data);
+ FreeScratchGC(putGC);
+ if (format == XYBitmap)
+ (void)(*pGC->ops->CopyPlane)(&pPixmap->drawable, dst, pGC, 0, 0, sw, sh,
+ dx, dy, 1L);
+ else
+ (void)(*pGC->ops->CopyArea)(&pPixmap->drawable, dst, pGC, 0, 0, sw, sh,
+ dx, dy);
+ (*pPixmap->drawable.pScreen->DestroyPixmap)(pPixmap);
+ }
}
#ifdef PANORAMIX
diff --git a/xorg-server/Xi/exevents.c b/xorg-server/Xi/exevents.c index 52a0fe3e6..8d56aa270 100644 --- a/xorg-server/Xi/exevents.c +++ b/xorg-server/Xi/exevents.c @@ -194,7 +194,7 @@ XIGetDevice(xEvent* xE) * This code is basically the old SwitchCoreKeyboard.
*/
-static void
+void
CopyKeyClass(DeviceIntPtr device, DeviceIntPtr master)
{
KeyClassPtr mk = master->key;
@@ -807,7 +807,7 @@ UpdateDeviceState(DeviceIntPtr device, DeviceEvent* event) {
/* XXX: Relative/Absolute mode */
v->axisVal[i] = event->valuators.data[i];
- v->axisVal[i] += event->valuators.data_frac[i];
+ v->axisVal[i] += (event->valuators.data_frac[i] * 1.0f / (1 << 16) / (1 << 16));
}
}
diff --git a/xorg-server/Xi/queryst.c b/xorg-server/Xi/queryst.c index 60ec32ec9..2ba1edb63 100644 --- a/xorg-server/Xi/queryst.c +++ b/xorg-server/Xi/queryst.c @@ -147,7 +147,7 @@ ProcXQueryDeviceState(ClientPtr client) if (v != NULL) { tv = (xValuatorState *) buf; tv->class = ValuatorClass; - tv->length = sizeof(xValuatorState); + tv->length = sizeof(xValuatorState) + v->numAxes * 4; tv->num_valuators = v->numAxes; tv->mode = v->mode; buf += sizeof(xValuatorState); diff --git a/xorg-server/composite/compinit.c b/xorg-server/composite/compinit.c index 6159e4e49..96ac70fd0 100644 --- a/xorg-server/composite/compinit.c +++ b/xorg-server/composite/compinit.c @@ -248,15 +248,9 @@ static Bool compAddAlternateVisual(ScreenPtr pScreen, CompScreenPtr cs, CompAlternateVisual *alt) { - VisualPtr visual, visuals; - int i; - int numVisuals; - XID *installedCmaps; - ColormapPtr installedCmap; - int numInstalledCmaps; + VisualPtr visual; DepthPtr depth; PictFormatPtr pPictFormat; - VisualID *vid; unsigned long alphaMask; /* @@ -277,54 +271,13 @@ compAddAlternateVisual(ScreenPtr pScreen, CompScreenPtr cs, pPictFormat->direct.red != pScreen->visuals[0].offsetRed) return FALSE; - vid = xalloc(sizeof(VisualID)); - if (!vid) - return FALSE; - - /* Find the installed colormaps */ - installedCmaps = xalloc (pScreen->maxInstalledCmaps * sizeof (XID)); - if (!installedCmaps) { - xfree(vid); - return FALSE; - } - numInstalledCmaps = pScreen->ListInstalledColormaps(pScreen, - installedCmaps); - - /* realloc the visual array to fit the new one in place */ - numVisuals = pScreen->numVisuals; - visuals = xrealloc(pScreen->visuals, (numVisuals + 1) * sizeof(VisualRec)); - if (!visuals) { - xfree(vid); - xfree(installedCmaps); - return FALSE; + if (ResizeVisualArray(pScreen, 1, depth) == FALSE) { + return FALSE; } - /* - * Fix up any existing installed colormaps -- we'll assume that - * the only ones created so far have been installed. If this - * isn't true, we'll have to walk the resource database looking - * for all colormaps. - */ - for (i = 0; i < numInstalledCmaps; i++) { - int j, rc; - - rc = dixLookupResourceByType((pointer *)&installedCmap, - installedCmaps[i], RT_COLORMAP, - serverClient, DixReadAccess); - if (rc != Success) - continue; - j = installedCmap->pVisual - pScreen->visuals; - installedCmap->pVisual = &visuals[j]; - } - - xfree(installedCmaps); - - pScreen->visuals = visuals; - visual = visuals + pScreen->numVisuals; /* the new one */ - pScreen->numVisuals++; + visual = pScreen->visuals + (pScreen->numVisuals - 1); /* the new one */ /* Initialize the visual */ - visual->vid = FakeClientID (0); visual->bitsPerRGBValue = 8; if (PICT_FORMAT_TYPE(alt->format) == PICT_TYPE_COLOR) { visual->class = PseudoColor; @@ -357,10 +310,6 @@ compAddAlternateVisual(ScreenPtr pScreen, CompScreenPtr cs, /* remember the visual ID to detect auto-update windows */ compRegisterAlternateVisuals(cs, &visual->vid, 1); - /* Fix up the depth */ - *vid = visual->vid; - depth->numVids = 1; - depth->vids = vid; return TRUE; } diff --git a/xorg-server/configure b/xorg-server/configure index 8ef951bae..175a3d075 100644 --- a/xorg-server/configure +++ b/xorg-server/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for xorg-server 1.6.99.902. +# Generated by GNU Autoconf 2.63 for xorg-server 1.7.0. # # Report bugs to <https://bugs.freedesktop.org/enter_bug.cgi?product=xorg>. # @@ -745,8 +745,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='xorg-server' PACKAGE_TARNAME='xorg-server' -PACKAGE_VERSION='1.6.99.902' -PACKAGE_STRING='xorg-server 1.6.99.902' +PACKAGE_VERSION='1.7.0' +PACKAGE_STRING='xorg-server 1.7.0' PACKAGE_BUGREPORT='https://bugs.freedesktop.org/enter_bug.cgi?product=xorg' ac_unique_file="Makefile.am" @@ -1999,7 +1999,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xorg-server 1.6.99.902 to adapt to many kinds of systems. +\`configure' configures xorg-server 1.7.0 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -2069,7 +2069,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xorg-server 1.6.99.902:";; + short | recursive ) echo "Configuration of xorg-server 1.7.0:";; esac cat <<\_ACEOF @@ -2139,7 +2139,7 @@ Optional Features: --enable-xorg Build Xorg server (default: auto) --enable-dmx Build DMX server (default: auto) --enable-xvfb Build Xvfb server (default: yes) - --enable-xnest Build Xnest server (default: yes) + --enable-xnest Build Xnest server (default: auto) --enable-xquartz Build Xquartz server for OS-X (default: auto) --enable-standalone-xpbproxy Build a standalone xpbproxy (in addition to the one @@ -2401,7 +2401,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xorg-server configure 1.6.99.902 +xorg-server configure 1.7.0 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -2415,7 +2415,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xorg-server $as_me 1.6.99.902, which was +It was created by xorg-server $as_me 1.7.0, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2783,7 +2783,7 @@ ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $ ac_compiler_gnu=$ac_cv_c_compiler_gnu -RELEASE_DATE="2009-9-22" +RELEASE_DATE="2009-10-2" am__api_version='1.11' @@ -3266,7 +3266,7 @@ fi # Define the identity of the package. PACKAGE='xorg-server' - VERSION='1.6.99.902' + VERSION='1.7.0' cat >>confdefs.h <<_ACEOF @@ -13513,11 +13513,6 @@ else WDTRACE=auto fi -if test "x$WDTRACE" = xauto; then - case $host_os in - darwin*) WDTRACE="no" ;; - esac -fi if test "x$WDTRACE" = "xyes" -o "x$WDTRACE" = "xauto" ; then # Extract the first word of "dtrace", so it can be a program name with args. set dummy dtrace; ac_word=$2 @@ -20019,7 +20014,7 @@ fi if test "${enable_xnest+set}" = set; then enableval=$enable_xnest; XNEST=$enableval else - XNEST=yes + XNEST=auto fi # Check whether --enable-xquartz was given. @@ -21468,6 +21463,15 @@ APPLEWMPROTO="applewmproto >= 1.4" REQUIRED_MODULES="randrproto >= 1.2.99.3 renderproto >= 0.11 fixesproto >= 4.1 damageproto >= 1.1 xcmiscproto >= 1.2.0 xextproto >= 7.0.99.3 xproto >= 7.0.13 xtrans >= 1.2.2 bigreqsproto >= 1.1.0 fontsproto inputproto >= 1.9.99.902 kbproto >= 1.0.3" REQUIRED_LIBS="xfont xau pixman-1 >= 0.15.20" +LIBAPPLEWM="applewm >= 1.4" +LIBDRI="dri >= 7.1.0" +LIBDRM="libdrm >= 2.3.0" +LIBGL="gl >= 7.1.0" +LIBXEXT="xext >= 1.0.99.4" +LIBXI="xi >= 1.2.99.1" +LIBPCIACCESS="pciaccess >= 0.8.0" +LIBGLIB="glib-2.0 >= 2.16" + pkg_failed=no { $as_echo "$as_me:$LINENO: checking for DBUS" >&5 @@ -22270,12 +22274,12 @@ if test -n "$GL_CFLAGS"; then pkg_cv_GL_CFLAGS="$GL_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO gl >= 7.1.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "$GLPROTO gl >= 7.1.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO \$LIBGL\"") >&5 + ($PKG_CONFIG --exists --print-errors "$GLPROTO $LIBGL") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_GL_CFLAGS=`$PKG_CONFIG --cflags "$GLPROTO gl >= 7.1.0" 2>/dev/null` + pkg_cv_GL_CFLAGS=`$PKG_CONFIG --cflags "$GLPROTO $LIBGL" 2>/dev/null` else pkg_failed=yes fi @@ -22286,12 +22290,12 @@ if test -n "$GL_LIBS"; then pkg_cv_GL_LIBS="$GL_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO gl >= 7.1.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "$GLPROTO gl >= 7.1.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO \$LIBGL\"") >&5 + ($PKG_CONFIG --exists --print-errors "$GLPROTO $LIBGL") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_GL_LIBS=`$PKG_CONFIG --libs "$GLPROTO gl >= 7.1.0" 2>/dev/null` + pkg_cv_GL_LIBS=`$PKG_CONFIG --libs "$GLPROTO $LIBGL" 2>/dev/null` else pkg_failed=yes fi @@ -22309,14 +22313,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$GLPROTO gl >= 7.1.0" 2>&1` + GL_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$GLPROTO $LIBGL" 2>&1` else - GL_PKG_ERRORS=`$PKG_CONFIG --print-errors "$GLPROTO gl >= 7.1.0" 2>&1` + GL_PKG_ERRORS=`$PKG_CONFIG --print-errors "$GLPROTO $LIBGL" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GL_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements ($GLPROTO gl >= 7.1.0) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($GLPROTO $LIBGL) were not met: $GL_PKG_ERRORS @@ -22327,7 +22331,7 @@ Alternatively, you may set the environment variables GL_CFLAGS and GL_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements ($GLPROTO gl >= 7.1.0) were not met: +$as_echo "$as_me: error: Package requirements ($GLPROTO $LIBGL) were not met: $GL_PKG_ERRORS @@ -22546,12 +22550,12 @@ if test -n "$DRI_CFLAGS"; then pkg_cv_DRI_CFLAGS="$DRI_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO dri >= 7.1.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "$GLPROTO dri >= 7.1.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO \$LIBDRI\"") >&5 + ($PKG_CONFIG --exists --print-errors "$GLPROTO $LIBDRI") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DRI_CFLAGS=`$PKG_CONFIG --cflags "$GLPROTO dri >= 7.1.0" 2>/dev/null` + pkg_cv_DRI_CFLAGS=`$PKG_CONFIG --cflags "$GLPROTO $LIBDRI" 2>/dev/null` else pkg_failed=yes fi @@ -22562,12 +22566,12 @@ if test -n "$DRI_LIBS"; then pkg_cv_DRI_LIBS="$DRI_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO dri >= 7.1.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "$GLPROTO dri >= 7.1.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$GLPROTO \$LIBDRI\"") >&5 + ($PKG_CONFIG --exists --print-errors "$GLPROTO $LIBDRI") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DRI_LIBS=`$PKG_CONFIG --libs "$GLPROTO dri >= 7.1.0" 2>/dev/null` + pkg_cv_DRI_LIBS=`$PKG_CONFIG --libs "$GLPROTO $LIBDRI" 2>/dev/null` else pkg_failed=yes fi @@ -22585,14 +22589,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - DRI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$GLPROTO dri >= 7.1.0" 2>&1` + DRI_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$GLPROTO $LIBDRI" 2>&1` else - DRI_PKG_ERRORS=`$PKG_CONFIG --print-errors "$GLPROTO dri >= 7.1.0" 2>&1` + DRI_PKG_ERRORS=`$PKG_CONFIG --print-errors "$GLPROTO $LIBDRI" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DRI_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements ($GLPROTO dri >= 7.1.0) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($GLPROTO $LIBDRI) were not met: $DRI_PKG_ERRORS @@ -22603,7 +22607,7 @@ Alternatively, you may set the environment variables DRI_CFLAGS and DRI_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements ($GLPROTO dri >= 7.1.0) were not met: +$as_echo "$as_me: error: Package requirements ($GLPROTO $LIBDRI) were not met: $DRI_PKG_ERRORS @@ -22750,12 +22754,12 @@ if test -n "$LIBDRM_CFLAGS"; then pkg_cv_LIBDRM_CFLAGS="$LIBDRM_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libdrm >= 2.3.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "libdrm >= 2.3.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBDRM\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBDRM") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_LIBDRM_CFLAGS=`$PKG_CONFIG --cflags "libdrm >= 2.3.0" 2>/dev/null` + pkg_cv_LIBDRM_CFLAGS=`$PKG_CONFIG --cflags "$LIBDRM" 2>/dev/null` else pkg_failed=yes fi @@ -22766,12 +22770,12 @@ if test -n "$LIBDRM_LIBS"; then pkg_cv_LIBDRM_LIBS="$LIBDRM_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"libdrm >= 2.3.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "libdrm >= 2.3.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBDRM\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBDRM") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_LIBDRM_LIBS=`$PKG_CONFIG --libs "libdrm >= 2.3.0" 2>/dev/null` + pkg_cv_LIBDRM_LIBS=`$PKG_CONFIG --libs "$LIBDRM" 2>/dev/null` else pkg_failed=yes fi @@ -22789,14 +22793,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - LIBDRM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "libdrm >= 2.3.0" 2>&1` + LIBDRM_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$LIBDRM" 2>&1` else - LIBDRM_PKG_ERRORS=`$PKG_CONFIG --print-errors "libdrm >= 2.3.0" 2>&1` + LIBDRM_PKG_ERRORS=`$PKG_CONFIG --print-errors "$LIBDRM" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$LIBDRM_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (libdrm >= 2.3.0) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($LIBDRM) were not met: $LIBDRM_PKG_ERRORS @@ -22807,7 +22811,7 @@ Alternatively, you may set the environment variables LIBDRM_CFLAGS and LIBDRM_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (libdrm >= 2.3.0) were not met: +$as_echo "$as_me: error: Package requirements ($LIBDRM) were not met: $LIBDRM_PKG_ERRORS @@ -24482,12 +24486,12 @@ if test -n "$GLIB_CFLAGS"; then pkg_cv_GLIB_CFLAGS="$GLIB_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16\"") >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBGLIB\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBGLIB") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "glib-2.0 >= 2.16" 2>/dev/null` + pkg_cv_GLIB_CFLAGS=`$PKG_CONFIG --cflags "$LIBGLIB" 2>/dev/null` else pkg_failed=yes fi @@ -24498,12 +24502,12 @@ if test -n "$GLIB_LIBS"; then pkg_cv_GLIB_LIBS="$GLIB_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"glib-2.0 >= 2.16\"") >&5 - ($PKG_CONFIG --exists --print-errors "glib-2.0 >= 2.16") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBGLIB\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBGLIB") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "glib-2.0 >= 2.16" 2>/dev/null` + pkg_cv_GLIB_LIBS=`$PKG_CONFIG --libs "$LIBGLIB" 2>/dev/null` else pkg_failed=yes fi @@ -24521,9 +24525,9 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "glib-2.0 >= 2.16" 2>&1` + GLIB_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$LIBGLIB" 2>&1` else - GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors "glib-2.0 >= 2.16" 2>&1` + GLIB_PKG_ERRORS=`$PKG_CONFIG --print-errors "$LIBGLIB" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$GLIB_PKG_ERRORS" >&5 @@ -24667,7 +24671,7 @@ cat >>confdefs.h <<\_ACEOF _ACEOF -if test "x$WDTRACE" != "xno" ; then +if test "x$WDTRACE" != "xno" && test "x$XQUARTZ" = "xno"; then DIX_LIB='$(top_builddir)/dix/dix.O' OS_LIB='$(top_builddir)/os/os.O' else @@ -25274,12 +25278,12 @@ if test -n "$XNESTMODULES_CFLAGS"; then pkg_cv_XNESTMODULES_CFLAGS="$XNESTMODULES_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xfont xext x11 xau \$XDMCP_MODULES\"") >&5 - ($PKG_CONFIG --exists --print-errors "xfont xext x11 xau $XDMCP_MODULES") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xfont \$LIBXEXT x11 xau \$XDMCP_MODULES\"") >&5 + ($PKG_CONFIG --exists --print-errors "xfont $LIBXEXT x11 xau $XDMCP_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XNESTMODULES_CFLAGS=`$PKG_CONFIG --cflags "xfont xext x11 xau $XDMCP_MODULES" 2>/dev/null` + pkg_cv_XNESTMODULES_CFLAGS=`$PKG_CONFIG --cflags "xfont $LIBXEXT x11 xau $XDMCP_MODULES" 2>/dev/null` else pkg_failed=yes fi @@ -25290,12 +25294,12 @@ if test -n "$XNESTMODULES_LIBS"; then pkg_cv_XNESTMODULES_LIBS="$XNESTMODULES_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xfont xext x11 xau \$XDMCP_MODULES\"") >&5 - ($PKG_CONFIG --exists --print-errors "xfont xext x11 xau $XDMCP_MODULES") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xfont \$LIBXEXT x11 xau \$XDMCP_MODULES\"") >&5 + ($PKG_CONFIG --exists --print-errors "xfont $LIBXEXT x11 xau $XDMCP_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XNESTMODULES_LIBS=`$PKG_CONFIG --libs "xfont xext x11 xau $XDMCP_MODULES" 2>/dev/null` + pkg_cv_XNESTMODULES_LIBS=`$PKG_CONFIG --libs "xfont $LIBXEXT x11 xau $XDMCP_MODULES" 2>/dev/null` else pkg_failed=yes fi @@ -25313,9 +25317,9 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XNESTMODULES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xfont xext x11 xau $XDMCP_MODULES" 2>&1` + XNESTMODULES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xfont $LIBXEXT x11 xau $XDMCP_MODULES" 2>&1` else - XNESTMODULES_PKG_ERRORS=`$PKG_CONFIG --print-errors "xfont xext x11 xau $XDMCP_MODULES" 2>&1` + XNESTMODULES_PKG_ERRORS=`$PKG_CONFIG --print-errors "xfont $LIBXEXT x11 xau $XDMCP_MODULES" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XNESTMODULES_PKG_ERRORS" >&5 @@ -25349,6 +25353,11 @@ fi if test "x$XNEST" = xyes; then + if test "x$have_xnest" = xno; then + { { $as_echo "$as_me:$LINENO: error: Xnest build explicitly requested, but required modules not found." >&5 +$as_echo "$as_me: error: Xnest build explicitly requested, but required modules not found." >&2;} + { (exit 1); exit 1; }; } + fi XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $DIX_LIB $MAIN_LIB $OS_LIB $CONFIG_LIB" XNEST_SYS_LIBS="$XNESTMODULES_LIBS $GLX_SYS_LIBS" @@ -25523,12 +25532,12 @@ if test -n "$PCIACCESS_CFLAGS"; then pkg_cv_PCIACCESS_CFLAGS="$PCIACCESS_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"pciaccess >= 0.8.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "pciaccess >= 0.8.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBPCIACCESS\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBPCIACCESS") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_PCIACCESS_CFLAGS=`$PKG_CONFIG --cflags "pciaccess >= 0.8.0" 2>/dev/null` + pkg_cv_PCIACCESS_CFLAGS=`$PKG_CONFIG --cflags "$LIBPCIACCESS" 2>/dev/null` else pkg_failed=yes fi @@ -25539,12 +25548,12 @@ if test -n "$PCIACCESS_LIBS"; then pkg_cv_PCIACCESS_LIBS="$PCIACCESS_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"pciaccess >= 0.8.0\"") >&5 - ($PKG_CONFIG --exists --print-errors "pciaccess >= 0.8.0") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBPCIACCESS\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBPCIACCESS") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_PCIACCESS_LIBS=`$PKG_CONFIG --libs "pciaccess >= 0.8.0" 2>/dev/null` + pkg_cv_PCIACCESS_LIBS=`$PKG_CONFIG --libs "$LIBPCIACCESS" 2>/dev/null` else pkg_failed=yes fi @@ -25562,14 +25571,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - PCIACCESS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "pciaccess >= 0.8.0" 2>&1` + PCIACCESS_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$LIBPCIACCESS" 2>&1` else - PCIACCESS_PKG_ERRORS=`$PKG_CONFIG --print-errors "pciaccess >= 0.8.0" 2>&1` + PCIACCESS_PKG_ERRORS=`$PKG_CONFIG --print-errors "$LIBPCIACCESS" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$PCIACCESS_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (pciaccess >= 0.8.0) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($LIBPCIACCESS) were not met: $PCIACCESS_PKG_ERRORS @@ -25580,7 +25589,7 @@ Alternatively, you may set the environment variables PCIACCESS_CFLAGS and PCIACCESS_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (pciaccess >= 0.8.0) were not met: +$as_echo "$as_me: error: Package requirements ($LIBPCIACCESS) were not met: $PCIACCESS_PKG_ERRORS @@ -27975,12 +27984,12 @@ if test -n "$XPBPROXY_CFLAGS"; then pkg_cv_XPBPROXY_CFLAGS="$XPBPROXY_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$APPLEWMPROTO applewm >= 1.4 xfixes x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "$APPLEWMPROTO applewm >= 1.4 xfixes x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$APPLEWMPROTO \$LIBAPPLEWM xfixes x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "$APPLEWMPROTO $LIBAPPLEWM xfixes x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XPBPROXY_CFLAGS=`$PKG_CONFIG --cflags "$APPLEWMPROTO applewm >= 1.4 xfixes x11" 2>/dev/null` + pkg_cv_XPBPROXY_CFLAGS=`$PKG_CONFIG --cflags "$APPLEWMPROTO $LIBAPPLEWM xfixes x11" 2>/dev/null` else pkg_failed=yes fi @@ -27991,12 +28000,12 @@ if test -n "$XPBPROXY_LIBS"; then pkg_cv_XPBPROXY_LIBS="$XPBPROXY_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$APPLEWMPROTO applewm >= 1.4 xfixes x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "$APPLEWMPROTO applewm >= 1.4 xfixes x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$APPLEWMPROTO \$LIBAPPLEWM xfixes x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "$APPLEWMPROTO $LIBAPPLEWM xfixes x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XPBPROXY_LIBS=`$PKG_CONFIG --libs "$APPLEWMPROTO applewm >= 1.4 xfixes x11" 2>/dev/null` + pkg_cv_XPBPROXY_LIBS=`$PKG_CONFIG --libs "$APPLEWMPROTO $LIBAPPLEWM xfixes x11" 2>/dev/null` else pkg_failed=yes fi @@ -28014,14 +28023,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XPBPROXY_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$APPLEWMPROTO applewm >= 1.4 xfixes x11" 2>&1` + XPBPROXY_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$APPLEWMPROTO $LIBAPPLEWM xfixes x11" 2>&1` else - XPBPROXY_PKG_ERRORS=`$PKG_CONFIG --print-errors "$APPLEWMPROTO applewm >= 1.4 xfixes x11" 2>&1` + XPBPROXY_PKG_ERRORS=`$PKG_CONFIG --print-errors "$APPLEWMPROTO $LIBAPPLEWM xfixes x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XPBPROXY_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements ($APPLEWMPROTO applewm >= 1.4 xfixes x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($APPLEWMPROTO $LIBAPPLEWM xfixes x11) were not met: $XPBPROXY_PKG_ERRORS @@ -28032,7 +28041,7 @@ Alternatively, you may set the environment variables XPBPROXY_CFLAGS and XPBPROXY_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements ($APPLEWMPROTO applewm >= 1.4 xfixes x11) were not met: +$as_echo "$as_me: error: Package requirements ($APPLEWMPROTO $LIBAPPLEWM xfixes x11) were not met: $XPBPROXY_PKG_ERRORS @@ -28264,12 +28273,12 @@ if test -n "$DMXMODULES_CFLAGS"; then pkg_cv_DMXMODULES_CFLAGS="$DMXMODULES_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 \$DMXPROTO xau \$XDMCP_MODULES\"") >&5 - ($PKG_CONFIG --exists --print-errors "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xmuu \$LIBXEXT x11 xrender xfixes xfont \$LIBXI \$DMXPROTO xau \$XDMCP_MODULES\"") >&5 + ($PKG_CONFIG --exists --print-errors "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXMODULES_CFLAGS=`$PKG_CONFIG --cflags "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES" 2>/dev/null` + pkg_cv_DMXMODULES_CFLAGS=`$PKG_CONFIG --cflags "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES" 2>/dev/null` else pkg_failed=yes fi @@ -28280,12 +28289,12 @@ if test -n "$DMXMODULES_LIBS"; then pkg_cv_DMXMODULES_LIBS="$DMXMODULES_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 \$DMXPROTO xau \$XDMCP_MODULES\"") >&5 - ($PKG_CONFIG --exists --print-errors "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xmuu \$LIBXEXT x11 xrender xfixes xfont \$LIBXI \$DMXPROTO xau \$XDMCP_MODULES\"") >&5 + ($PKG_CONFIG --exists --print-errors "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXMODULES_LIBS=`$PKG_CONFIG --libs "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES" 2>/dev/null` + pkg_cv_DMXMODULES_LIBS=`$PKG_CONFIG --libs "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES" 2>/dev/null` else pkg_failed=yes fi @@ -28303,9 +28312,9 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - DMXMODULES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES" 2>&1` + DMXMODULES_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES" 2>&1` else - DMXMODULES_PKG_ERRORS=`$PKG_CONFIG --print-errors "xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES" 2>&1` + DMXMODULES_PKG_ERRORS=`$PKG_CONFIG --print-errors "xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DMXMODULES_PKG_ERRORS" >&5 @@ -28352,7 +28361,7 @@ $as_echo "$as_me: error: Xdmx build explicitly requested, but required fi DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC" XDMX_CFLAGS="$DMXMODULES_CFLAGS" - XDMX_LIBS="$XEXT_LIB $FB_LIB $CONFIG_LIB $FIXES_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB" + XDMX_LIBS="$FB_LIB $MI_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $XEXT_LIB $MAIN_LIB $DIX_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" XDMX_SYS_LIBS="$DMXMODULES_LIBS" @@ -28756,12 +28765,12 @@ if test -n "$DMXEXAMPLES_DEP_CFLAGS"; then pkg_cv_DMXEXAMPLES_DEP_CFLAGS="$DMXEXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx xext x11" 2>/dev/null` + pkg_cv_DMXEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -28772,12 +28781,12 @@ if test -n "$DMXEXAMPLES_DEP_LIBS"; then pkg_cv_DMXEXAMPLES_DEP_LIBS="$DMXEXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx xext x11" 2>/dev/null` + pkg_cv_DMXEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -28795,14 +28804,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - DMXEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx xext x11" 2>&1` + DMXEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx $LIBXEXT x11" 2>&1` else - DMXEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx xext x11" 2>&1` + DMXEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx $LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DMXEXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx $LIBXEXT x11) were not met: $DMXEXAMPLES_DEP_PKG_ERRORS @@ -28813,7 +28822,7 @@ Alternatively, you may set the environment variables DMXEXAMPLES_DEP_CFLAGS and DMXEXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (dmx xext x11) were not met: +$as_echo "$as_me: error: Package requirements (dmx $LIBXEXT x11) were not met: $DMXEXAMPLES_DEP_PKG_ERRORS @@ -28866,12 +28875,12 @@ if test -n "$DMXXMUEXAMPLES_DEP_CFLAGS"; then pkg_cv_DMXXMUEXAMPLES_DEP_CFLAGS="$DMXXMUEXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xmu xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xmu xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xmu \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx xmu $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXXMUEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx xmu xext x11" 2>/dev/null` + pkg_cv_DMXXMUEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx xmu $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -28882,12 +28891,12 @@ if test -n "$DMXXMUEXAMPLES_DEP_LIBS"; then pkg_cv_DMXXMUEXAMPLES_DEP_LIBS="$DMXXMUEXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xmu xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xmu xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xmu \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx xmu $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXXMUEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx xmu xext x11" 2>/dev/null` + pkg_cv_DMXXMUEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx xmu $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -28905,14 +28914,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - DMXXMUEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx xmu xext x11" 2>&1` + DMXXMUEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx xmu $LIBXEXT x11" 2>&1` else - DMXXMUEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx xmu xext x11" 2>&1` + DMXXMUEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx xmu $LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DMXXMUEXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx xmu xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx xmu $LIBXEXT x11) were not met: $DMXXMUEXAMPLES_DEP_PKG_ERRORS @@ -28923,7 +28932,7 @@ Alternatively, you may set the environment variables DMXXMUEXAMPLES_DEP_CFLAGS and DMXXMUEXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (dmx xmu xext x11) were not met: +$as_echo "$as_me: error: Package requirements (dmx xmu $LIBXEXT x11) were not met: $DMXXMUEXAMPLES_DEP_PKG_ERRORS @@ -28976,12 +28985,12 @@ if test -n "$DMXXIEXAMPLES_DEP_CFLAGS"; then pkg_cv_DMXXIEXAMPLES_DEP_CFLAGS="$DMXXIEXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xi xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xi xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx \$LIBXI \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx $LIBXI $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXXIEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx xi xext x11" 2>/dev/null` + pkg_cv_DMXXIEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "dmx $LIBXI $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -28992,12 +29001,12 @@ if test -n "$DMXXIEXAMPLES_DEP_LIBS"; then pkg_cv_DMXXIEXAMPLES_DEP_LIBS="$DMXXIEXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx xi xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "dmx xi xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dmx \$LIBXI \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "dmx $LIBXI $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_DMXXIEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx xi xext x11" 2>/dev/null` + pkg_cv_DMXXIEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "dmx $LIBXI $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29015,14 +29024,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - DMXXIEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx xi xext x11" 2>&1` + DMXXIEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dmx $LIBXI $LIBXEXT x11" 2>&1` else - DMXXIEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx xi xext x11" 2>&1` + DMXXIEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "dmx $LIBXI $LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$DMXXIEXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx xi xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (dmx $LIBXI $LIBXEXT x11) were not met: $DMXXIEXAMPLES_DEP_PKG_ERRORS @@ -29033,7 +29042,7 @@ Alternatively, you may set the environment variables DMXXIEXAMPLES_DEP_CFLAGS and DMXXIEXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (dmx xi xext x11) were not met: +$as_echo "$as_me: error: Package requirements (dmx $LIBXI $LIBXEXT x11) were not met: $DMXXIEXAMPLES_DEP_PKG_ERRORS @@ -29086,12 +29095,12 @@ if test -n "$XTSTEXAMPLES_DEP_CFLAGS"; then pkg_cv_XTSTEXAMPLES_DEP_CFLAGS="$XTSTEXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xtst xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xtst xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xtst \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "xtst $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XTSTEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "xtst xext x11" 2>/dev/null` + pkg_cv_XTSTEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "xtst $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29102,12 +29111,12 @@ if test -n "$XTSTEXAMPLES_DEP_LIBS"; then pkg_cv_XTSTEXAMPLES_DEP_LIBS="$XTSTEXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xtst xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xtst xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xtst \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "xtst $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XTSTEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "xtst xext x11" 2>/dev/null` + pkg_cv_XTSTEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "xtst $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29125,14 +29134,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XTSTEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xtst xext x11" 2>&1` + XTSTEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xtst $LIBXEXT x11" 2>&1` else - XTSTEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "xtst xext x11" 2>&1` + XTSTEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "xtst $LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XTSTEXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (xtst xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (xtst $LIBXEXT x11) were not met: $XTSTEXAMPLES_DEP_PKG_ERRORS @@ -29143,7 +29152,7 @@ Alternatively, you may set the environment variables XTSTEXAMPLES_DEP_CFLAGS and XTSTEXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (xtst xext x11) were not met: +$as_echo "$as_me: error: Package requirements (xtst $LIBXEXT x11) were not met: $XTSTEXAMPLES_DEP_PKG_ERRORS @@ -29196,12 +29205,12 @@ if test -n "$XRESEXAMPLES_DEP_CFLAGS"; then pkg_cv_XRESEXAMPLES_DEP_CFLAGS="$XRESEXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xres xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xres xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xres \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "xres $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XRESEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "xres xext x11" 2>/dev/null` + pkg_cv_XRESEXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "xres $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29212,12 +29221,12 @@ if test -n "$XRESEXAMPLES_DEP_LIBS"; then pkg_cv_XRESEXAMPLES_DEP_LIBS="$XRESEXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xres xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xres xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xres \$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "xres $LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_XRESEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "xres xext x11" 2>/dev/null` + pkg_cv_XRESEXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "xres $LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29235,14 +29244,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - XRESEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xres xext x11" 2>&1` + XRESEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xres $LIBXEXT x11" 2>&1` else - XRESEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "xres xext x11" 2>&1` + XRESEXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "xres $LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$XRESEXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (xres xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements (xres $LIBXEXT x11) were not met: $XRESEXAMPLES_DEP_PKG_ERRORS @@ -29253,7 +29262,7 @@ Alternatively, you may set the environment variables XRESEXAMPLES_DEP_CFLAGS and XRESEXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (xres xext x11) were not met: +$as_echo "$as_me: error: Package requirements (xres $LIBXEXT x11) were not met: $XRESEXAMPLES_DEP_PKG_ERRORS @@ -29306,12 +29315,12 @@ if test -n "$X11EXAMPLES_DEP_CFLAGS"; then pkg_cv_X11EXAMPLES_DEP_CFLAGS="$X11EXAMPLES_DEP_CFLAGS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_X11EXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "xext x11" 2>/dev/null` + pkg_cv_X11EXAMPLES_DEP_CFLAGS=`$PKG_CONFIG --cflags "$LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29322,12 +29331,12 @@ if test -n "$X11EXAMPLES_DEP_LIBS"; then pkg_cv_X11EXAMPLES_DEP_LIBS="$X11EXAMPLES_DEP_LIBS" elif test -n "$PKG_CONFIG"; then if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"xext x11\"") >&5 - ($PKG_CONFIG --exists --print-errors "xext x11") 2>&5 + { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"\$LIBXEXT x11\"") >&5 + ($PKG_CONFIG --exists --print-errors "$LIBXEXT x11") 2>&5 ac_status=$? $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 (exit $ac_status); }; then - pkg_cv_X11EXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "xext x11" 2>/dev/null` + pkg_cv_X11EXAMPLES_DEP_LIBS=`$PKG_CONFIG --libs "$LIBXEXT x11" 2>/dev/null` else pkg_failed=yes fi @@ -29345,14 +29354,14 @@ else _pkg_short_errors_supported=no fi if test $_pkg_short_errors_supported = yes; then - X11EXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "xext x11" 2>&1` + X11EXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "$LIBXEXT x11" 2>&1` else - X11EXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "xext x11" 2>&1` + X11EXAMPLES_DEP_PKG_ERRORS=`$PKG_CONFIG --print-errors "$LIBXEXT x11" 2>&1` fi # Put the nasty error message in config.log where it belongs echo "$X11EXAMPLES_DEP_PKG_ERRORS" >&5 - { { $as_echo "$as_me:$LINENO: error: Package requirements (xext x11) were not met: + { { $as_echo "$as_me:$LINENO: error: Package requirements ($LIBXEXT x11) were not met: $X11EXAMPLES_DEP_PKG_ERRORS @@ -29363,7 +29372,7 @@ Alternatively, you may set the environment variables X11EXAMPLES_DEP_CFLAGS and X11EXAMPLES_DEP_LIBS to avoid the need to call pkg-config. See the pkg-config man page for more details. " >&5 -$as_echo "$as_me: error: Package requirements (xext x11) were not met: +$as_echo "$as_me: error: Package requirements ($LIBXEXT x11) were not met: $X11EXAMPLES_DEP_PKG_ERRORS @@ -29849,7 +29858,79 @@ else $as_echo "yes" >&6; } HAVE_TSLIB="yes" fi - if test "x$HAVE_TSLIB" = xauto; then + if test "x$HAVE_TSLIB" = xno; then + { $as_echo "$as_me:$LINENO: checking for ts_open in -lts" >&5 +$as_echo_n "checking for ts_open in -lts... " >&6; } +if test "${ac_cv_lib_ts_ts_open+set}" = set; then + $as_echo_n "(cached) " >&6 +else + ac_check_lib_save_LIBS=$LIBS +LIBS="-lts $LIBS" +cat >conftest.$ac_ext <<_ACEOF +/* confdefs.h. */ +_ACEOF +cat confdefs.h >>conftest.$ac_ext +cat >>conftest.$ac_ext <<_ACEOF +/* end confdefs.h. */ + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char ts_open (); +int +main () +{ +return ts_open (); + ; + return 0; +} +_ACEOF +rm -f conftest.$ac_objext conftest$ac_exeext +if { (ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" +$as_echo "$ac_try_echo") >&5 + (eval "$ac_link") 2>conftest.er1 + ac_status=$? + grep -v '^ *+' conftest.er1 >conftest.err + rm -f conftest.er1 + cat conftest.err >&5 + $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 + (exit $ac_status); } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then + ac_cv_lib_ts_ts_open=yes +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_cv_lib_ts_ts_open=no +fi + +rm -rf conftest.dSYM +rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ + conftest$ac_exeext conftest.$ac_ext +LIBS=$ac_check_lib_save_LIBS +fi +{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_ts_ts_open" >&5 +$as_echo "$ac_cv_lib_ts_ts_open" >&6; } +if test "x$ac_cv_lib_ts_ts_open" = x""yes; then + HAVE_TSLIB="yes" +fi + + fi + + if test "xTSLIB" = xauto; then TSLIB="$HAVE_TSLIB" fi @@ -30033,12 +30114,12 @@ _ACEOF XSDL_INCS="`sdl-config --cflags` $XSERVER_CFLAGS" fi - XEPHYR_REQUIRED_LIBS="x11 xext xfont xau xdmcp" + XEPHYR_REQUIRED_LIBS="x11 $LIBXEXT xfont xau xdmcp" if test "x$XV" = xyes; then XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS xv" fi if test "x$DRI" = xyes && test "x$GLX" = xyes; then - XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS gl libdrm" + XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS $LIBGL libdrm" fi @@ -31752,7 +31833,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xorg-server $as_me 1.6.99.902, which was +This file was extended by xorg-server $as_me 1.7.0, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -31815,7 +31896,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -xorg-server config.status 1.6.99.902 +xorg-server config.status 1.7.0 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/xorg-server/configure.ac b/xorg-server/configure.ac index db5325ee9..9425bc964 100644 --- a/xorg-server/configure.ac +++ b/xorg-server/configure.ac @@ -26,8 +26,8 @@ dnl dnl Process this file with autoconf to create configure. AC_PREREQ(2.57) -AC_INIT([xorg-server], 1.6.99.902, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) -RELEASE_DATE="2009-9-22" +AC_INIT([xorg-server], 1.7.0, [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg], xorg-server) +RELEASE_DATE="2009-10-2" AC_CONFIG_SRCDIR([Makefile.am]) AM_INIT_AUTOMAKE([dist-bzip2 foreign]) AM_MAINTAINER_MODE @@ -85,12 +85,6 @@ dnl ISDN trace program named dtrace AC_ARG_WITH(dtrace, AS_HELP_STRING([--with-dtrace=PATH], [Enable dtrace probes (default: enabled if dtrace found)]), [WDTRACE=$withval], [WDTRACE=auto]) -dnl Darwin 9 has dtrace, but it doesn't support compilation into ELF... -if test "x$WDTRACE" = xauto; then - case $host_os in - darwin*) WDTRACE="no" ;; - esac -fi if test "x$WDTRACE" = "xyes" -o "x$WDTRACE" = "xauto" ; then AC_PATH_PROG(DTRACE, [dtrace], [not_found], [$PATH:/usr/sbin]) if test "x$DTRACE" = "xnot_found" ; then @@ -604,7 +598,7 @@ dnl DDXes. AC_ARG_ENABLE(xorg, AS_HELP_STRING([--enable-xorg], [Build Xorg server (default: auto)]), [XORG=$enableval], [XORG=auto]) AC_ARG_ENABLE(dmx, AS_HELP_STRING([--enable-dmx], [Build DMX server (default: auto)]), [DMX=$enableval], [DMX=auto]) AC_ARG_ENABLE(xvfb, AS_HELP_STRING([--enable-xvfb], [Build Xvfb server (default: yes)]), [XVFB=$enableval], [XVFB=yes]) -AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: yes)]), [XNEST=$enableval], [XNEST=yes]) +AC_ARG_ENABLE(xnest, AS_HELP_STRING([--enable-xnest], [Build Xnest server (default: auto)]), [XNEST=$enableval], [XNEST=auto]) AC_ARG_ENABLE(xquartz, AS_HELP_STRING([--enable-xquartz], [Build Xquartz server for OS-X (default: auto)]), [XQUARTZ=$enableval], [XQUARTZ=auto]) AC_ARG_ENABLE(standalone-xpbproxy, AS_HELP_STRING([--enable-standalone-xpbproxy], [Build a standalone xpbproxy (in addition to the one integrated into Xquartz as a separate thread) (default: no)]), [STANDALONE_XPBPROXY=$enableval], [STANDALONE_XPBPROXY=no]) AC_ARG_ENABLE(xwin, AS_HELP_STRING([--enable-xwin], [Build XWin server (default: auto)]), [XWIN=$enableval], [XWIN=auto]) @@ -738,6 +732,16 @@ dnl Core modules for most extensions, et al. REQUIRED_MODULES="[randrproto >= 1.2.99.3] [renderproto >= 0.11] [fixesproto >= 4.1] [damageproto >= 1.1] [xcmiscproto >= 1.2.0] [xextproto >= 7.0.99.3] [xproto >= 7.0.13] [xtrans >= 1.2.2] [bigreqsproto >= 1.1.0] fontsproto [inputproto >= 1.9.99.902] [kbproto >= 1.0.3]" REQUIRED_LIBS="xfont xau [pixman-1 >= 0.15.20]" +dnl List of libraries that require a specific version +LIBAPPLEWM="applewm >= 1.4" +LIBDRI="dri >= 7.1.0" +LIBDRM="libdrm >= 2.3.0" +LIBGL="gl >= 7.1.0" +LIBXEXT="xext >= 1.0.99.4" +LIBXI="xi >= 1.2.99.1" +LIBPCIACCESS="pciaccess >= 0.8.0" +LIBGLIB="glib-2.0 >= 2.16" + dnl HAVE_DBUS is true if we actually have the D-Bus library, whereas dnl CONFIG_DBUS_API is true if we want to enable the D-Bus config dnl API. @@ -901,7 +905,7 @@ fi if test "x$GLX" = xyes; then PKG_CHECK_MODULES([XLIB], [x11]) - PKG_CHECK_MODULES([GL], $GLPROTO [gl >= 7.1.0]) + PKG_CHECK_MODULES([GL], $GLPROTO $LIBGL) AC_SUBST(XLIB_CFLAGS) AC_DEFINE(GLXEXT, 1, [Build GLX extension]) GLX_LIBS='$(top_builddir)/glx/libglx.la' @@ -928,7 +932,7 @@ AM_CONDITIONAL(DRI, test "x$DRI" = xyes) if test "x$DRI" = xyes; then AC_DEFINE(XF86DRI, 1, [Build DRI extension]) PKG_CHECK_MODULES([DRIPROTO], [$DRIPROTO]) - PKG_CHECK_MODULES([DRI], $GLPROTO [dri >= 7.1.0]) + PKG_CHECK_MODULES([DRI], $GLPROTO $LIBDRI) AC_SUBST(DRIPROTO_CFLAGS) fi @@ -946,7 +950,7 @@ esac AM_CONDITIONAL(DRI2, test "x$DRI2" = xyes) if test "x$DRI" = xyes || test "x$DRI2" = xyes; then - PKG_CHECK_MODULES([LIBDRM], [libdrm >= 2.3.0]) + PKG_CHECK_MODULES([LIBDRM], $LIBDRM) AC_SUBST(LIBDRM_CFLAGS) AC_SUBST(LIBDRM_LIBS) fi @@ -1193,7 +1197,7 @@ AM_CONDITIONAL(DEBUG, [test "x$DEBUGGING" = xyes]) # If unittests aren't explicitly disabled, check for required support if test "x$UNITTESTS" != xno ; then - PKG_CHECK_MODULES([GLIB], [glib-2.0 >= 2.16], + PKG_CHECK_MODULES([GLIB], $LIBGLIB, [HAVE_GLIB=yes], [HAVE_GLIB=no]) # Check if linker supports -wrap, passed via compiler flags @@ -1240,7 +1244,7 @@ AC_DEFINE(XSYNC, 1, [Support XSync extension]) AC_DEFINE(XCMISC, 1, [Support XCMisc extension]) AC_DEFINE(BIGREQS, 1, [Support BigRequests extension]) -if test "x$WDTRACE" != "xno" ; then +if test "x$WDTRACE" != "xno" && test "x$XQUARTZ" = "xno"; then DIX_LIB='$(top_builddir)/dix/dix.O' OS_LIB='$(top_builddir)/os/os.O' else @@ -1360,7 +1364,7 @@ fi dnl Xnest DDX -PKG_CHECK_MODULES(XNESTMODULES, [xfont xext x11 xau $XDMCP_MODULES], [have_xnest=yes], [have_xnest=no]) +PKG_CHECK_MODULES(XNESTMODULES, [xfont $LIBXEXT x11 xau $XDMCP_MODULES], [have_xnest=yes], [have_xnest=no]) AC_MSG_CHECKING([whether to build Xnest DDX]) if test "x$XNEST" = xauto; then XNEST="$have_xnest" @@ -1369,6 +1373,9 @@ AC_MSG_RESULT([$XNEST]) AM_CONDITIONAL(XNEST, [test "x$XNEST" = xyes]) if test "x$XNEST" = xyes; then + if test "x$have_xnest" = xno; then + AC_MSG_ERROR([Xnest build explicitly requested, but required modules not found.]) + fi XNEST_LIBS="$FB_LIB $FIXES_LIB $MI_LIB $XEXT_LIB $DBE_LIB $RECORD_LIB $GLX_LIBS $RANDR_LIB $RENDER_LIB $DAMAGE_LIB $MIEXT_DAMAGE_LIB $MIEXT_SHADOW_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $COMPOSITE_LIB $DIX_LIB $MAIN_LIB $OS_LIB $CONFIG_LIB" XNEST_SYS_LIBS="$XNESTMODULES_LIBS $GLX_SYS_LIBS" AC_SUBST([XNEST_LIBS]) @@ -1440,7 +1447,7 @@ if test "x$XORG" = xyes; then AC_SUBST([symbol_visibility]) dnl =================================================================== - PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0]) + PKG_CHECK_MODULES([PCIACCESS], $LIBPCIACCESS) SAVE_LIBS=$LIBS SAVE_CFLAGS=$CFLAGS CFLAGS=$PCIACCESS_CFLAGS @@ -1746,7 +1753,7 @@ if test "x$XQUARTZ" = xyes; then CFLAGS="${CFLAGS} -DROOTLESS_WORKAROUND -DROOTLESS_SAFEALPHA -DNO_ALLOCA" - PKG_CHECK_MODULES(XPBPROXY, $APPLEWMPROTO [applewm >= 1.4] xfixes x11) + PKG_CHECK_MODULES(XPBPROXY, $APPLEWMPROTO $LIBAPPLEWM xfixes x11) if test "x$XQUARTZ_SPARKLE" = xyes ; then AC_DEFINE(XQUARTZ_SPARKLE,1,[Support application updating through sparkle.]) @@ -1775,7 +1782,7 @@ AM_CONDITIONAL(STANDALONE_XPBPROXY, [test "x$STANDALONE_XPBPROXY" = xyes]) dnl DMX DDX PKG_CHECK_MODULES([DMXMODULES], - [xmuu xext x11 xrender xfixes xfont xi >= 1.2.99.1 $DMXPROTO xau $XDMCP_MODULES], + [xmuu $LIBXEXT x11 xrender xfixes xfont $LIBXI $DMXPROTO xau $XDMCP_MODULES], [have_dmx=yes], [have_dmx=no]) AC_MSG_CHECKING([whether to build Xdmx DDX]) if test "x$DMX" = xauto; then @@ -1795,7 +1802,7 @@ if test "x$DMX" = xyes; then fi DMX_INCLUDES="$XEXT_INC $RENDER_INC $RECORD_INC" XDMX_CFLAGS="$DMXMODULES_CFLAGS" - XDMX_LIBS="$XEXT_LIB $FB_LIB $CONFIG_LIB $FIXES_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB" + XDMX_LIBS="$FB_LIB $MI_LIB $RENDER_LIB $RECORD_LIB $XI_LIB $XKB_LIB $XKB_STUB_LIB $MIEXT_SHADOW_LIB $MIEXT_DAMAGE_LIB $XEXT_LIB $MAIN_LIB $DIX_LIB $CONFIG_LIB $OS_LIB $FIXES_LIB" XDMX_SYS_LIBS="$DMXMODULES_LIBS" AC_SUBST([XDMX_CFLAGS]) AC_SUBST([XDMX_LIBS]) @@ -1810,17 +1817,17 @@ dnl Linux sources in DMX require <linux/keyboard.h> PKG_CHECK_MODULES([XDMXCONFIG_DEP], [xaw7 xmu xt xpm x11]) AC_SUBST(XDMXCONFIG_DEP_CFLAGS) AC_SUBST(XDMXCONFIG_DEP_LIBS) - PKG_CHECK_MODULES([DMXEXAMPLES_DEP], [dmx xext x11]) + PKG_CHECK_MODULES([DMXEXAMPLES_DEP], [dmx $LIBXEXT x11]) AC_SUBST(DMXEXAMPLES_DEP_LIBS) - PKG_CHECK_MODULES([DMXXMUEXAMPLES_DEP], [dmx xmu xext x11]) + PKG_CHECK_MODULES([DMXXMUEXAMPLES_DEP], [dmx xmu $LIBXEXT x11]) AC_SUBST(DMXXMUEXAMPLES_DEP_LIBS) - PKG_CHECK_MODULES([DMXXIEXAMPLES_DEP], [dmx xi xext x11]) + PKG_CHECK_MODULES([DMXXIEXAMPLES_DEP], [dmx $LIBXI $LIBXEXT x11]) AC_SUBST(DMXXIEXAMPLES_DEP_LIBS) - PKG_CHECK_MODULES([XTSTEXAMPLES_DEP], [xtst xext x11]) + PKG_CHECK_MODULES([XTSTEXAMPLES_DEP], [xtst $LIBXEXT x11]) AC_SUBST(XTSTEXAMPLES_DEP_LIBS) - PKG_CHECK_MODULES([XRESEXAMPLES_DEP], [xres xext x11]) + PKG_CHECK_MODULES([XRESEXAMPLES_DEP], [xres $LIBXEXT x11]) AC_SUBST(XRESEXAMPLES_DEP_LIBS) - PKG_CHECK_MODULES([X11EXAMPLES_DEP], [xext x11]) + PKG_CHECK_MODULES([X11EXAMPLES_DEP], [$LIBXEXT x11]) AC_SUBST(X11EXAMPLES_DEP_LIBS) fi AM_CONDITIONAL([DMX_BUILD_LNX], [test "x$DMX_BUILD_LNX" = xyes]) @@ -1861,7 +1868,11 @@ if test "$KDRIVE" = yes; then PKG_CHECK_MODULES([TSLIB], [tslib-0.0], [HAVE_TSLIB="yes"], [HAVE_TSLIB="no"]) - if test "x$HAVE_TSLIB" = xauto; then + if test "x$HAVE_TSLIB" = xno; then + AC_CHECK_LIB(ts, ts_open, [HAVE_TSLIB="yes"]) + fi + + if test "xTSLIB" = xauto; then TSLIB="$HAVE_TSLIB" fi @@ -1885,12 +1896,12 @@ if test "$KDRIVE" = yes; then XSDL_INCS="`sdl-config --cflags` $XSERVER_CFLAGS" fi - XEPHYR_REQUIRED_LIBS="x11 xext xfont xau xdmcp" + XEPHYR_REQUIRED_LIBS="x11 $LIBXEXT xfont xau xdmcp" if test "x$XV" = xyes; then XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS xv" fi if test "x$DRI" = xyes && test "x$GLX" = xyes; then - XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS gl libdrm" + XEPHYR_REQUIRED_LIBS="$XEPHYR_REQUIRED_LIBS $LIBGL libdrm" fi PKG_CHECK_MODULES(XEPHYR, $XEPHYR_REQUIRED_LIBS, [xephyr="yes"], [xephyr="no"]) diff --git a/xorg-server/dix/Makefile.am b/xorg-server/dix/Makefile.am index 13e5dedd7..23fe46007 100644 --- a/xorg-server/dix/Makefile.am +++ b/xorg-server/dix/Makefile.am @@ -54,6 +54,7 @@ Xserver-dtrace.h: $(srcdir)/Xserver.d $(DTRACE) -C -h -o $@ -s $(srcdir)/Xserver.d \ || cp Xserver-dtrace.h.in $@ +if !XQUARTZ # Generate dtrace object code for probes in libdix dtrace-dix.o: $(top_srcdir)/dix/Xserver.d $(am_libdix_la_OBJECTS) $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o @@ -63,6 +64,7 @@ noinst_PROGRAMS = dix.O dix.O: dtrace-dix.o $(am_libdix_la_OBJECTS) ld -r -o $@ .libs/*.o endif +endif dix.c: touch $@ diff --git a/xorg-server/dix/Makefile.in b/xorg-server/dix/Makefile.in index 661851255..eff37155a 100644 --- a/xorg-server/dix/Makefile.in +++ b/xorg-server/dix/Makefile.in @@ -36,7 +36,7 @@ PRE_UNINSTALL = : POST_UNINSTALL = : build_triplet = @build@ host_triplet = @host@ -@XSERVER_DTRACE_TRUE@noinst_PROGRAMS = dix.O$(EXEEXT) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@noinst_PROGRAMS = dix.O$(EXEEXT) subdir = dix DIST_COMMON = $(dist_miscconfig_DATA) $(srcdir)/Makefile.am \ $(srcdir)/Makefile.in @@ -527,6 +527,9 @@ clean-noinstPROGRAMS: list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list +@XQUARTZ_TRUE@dix.O$(EXEEXT): $(dix_O_OBJECTS) $(dix_O_DEPENDENCIES) +@XQUARTZ_TRUE@ @rm -f dix.O$(EXEEXT) +@XQUARTZ_TRUE@ $(AM_V_CCLD)$(LINK) $(dix_O_OBJECTS) $(dix_O_LDADD) $(LIBS) @XSERVER_DTRACE_FALSE@dix.O$(EXEEXT): $(dix_O_OBJECTS) $(dix_O_DEPENDENCIES) @XSERVER_DTRACE_FALSE@ @rm -f dix.O$(EXEEXT) @XSERVER_DTRACE_FALSE@ $(AM_V_CCLD)$(LINK) $(dix_O_OBJECTS) $(dix_O_LDADD) $(LIBS) @@ -833,11 +836,11 @@ uninstall-am: uninstall-dist_miscconfigDATA @XSERVER_DTRACE_TRUE@ || cp Xserver-dtrace.h.in $@ # Generate dtrace object code for probes in libdix -@XSERVER_DTRACE_TRUE@dtrace-dix.o: $(top_srcdir)/dix/Xserver.d $(am_libdix_la_OBJECTS) -@XSERVER_DTRACE_TRUE@ $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@dtrace-dix.o: $(top_srcdir)/dix/Xserver.d $(am_libdix_la_OBJECTS) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@ $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o -@XSERVER_DTRACE_TRUE@dix.O: dtrace-dix.o $(am_libdix_la_OBJECTS) -@XSERVER_DTRACE_TRUE@ ld -r -o $@ .libs/*.o +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@dix.O: dtrace-dix.o $(am_libdix_la_OBJECTS) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@ ld -r -o $@ .libs/*.o dix.c: touch $@ diff --git a/xorg-server/dix/Xserver.d b/xorg-server/dix/Xserver.d index e4c9b8320..cea97e908 100644 --- a/xorg-server/dix/Xserver.d +++ b/xorg-server/dix/Xserver.d @@ -29,8 +29,13 @@ /* * Xserver dtrace provider definition */ - +#ifdef __APPLE__ +#define string char * +#define pid_t uint32_t +#define zoneid_t uint32_t +#else #include <sys/types.h> +#endif provider Xserver { /* reqType, data, length, client id, request buffer */ diff --git a/xorg-server/dix/colormap.c b/xorg-server/dix/colormap.c index 6fbf26c3b..48d36f796 100644 --- a/xorg-server/dix/colormap.c +++ b/xorg-server/dix/colormap.c @@ -1,2696 +1,2760 @@ -/*********************************************************** - -Copyright 1987, 1998 The Open Group - -Permission to use, copy, modify, distribute, and sell this software and its -documentation for any purpose is hereby granted without fee, provided that -the above copyright notice appear in all copies and that both that -copyright notice and this permission notice appear in supporting -documentation. - -The above copyright notice and this permission notice shall be included in -all copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN -AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN -CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -Except as contained in this notice, the name of The Open Group shall not be -used in advertising or otherwise to promote the sale, use or other dealings -in this Software without prior written authorization from The Open Group. - - -Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts. - - All Rights Reserved - -Permission to use, copy, modify, and distribute this software and its -documentation for any purpose and without fee is hereby granted, -provided that the above copyright notice appear in all copies and that -both that copyright notice and this permission notice appear in -supporting documentation, and that the name of Digital not be -used in advertising or publicity pertaining to distribution of the -software without specific, written prior permission. - -DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING -ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL -DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR -ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, -WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, -ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS -SOFTWARE. - -******************************************************************/ - - -#ifdef HAVE_DIX_CONFIG_H -#include <dix-config.h> -#endif - -#include <X11/X.h> -#include <X11/Xproto.h> -#include <stdio.h> -#include <string.h> -#include <strings.h> -#include "misc.h" -#include "dix.h" -#include "colormapst.h" -#include "os.h" -#include "scrnintstr.h" -#include "resource.h" -#include "windowstr.h" -#include "privates.h" -#include "xace.h" - -#ifdef _MSC_VER -#define UpdateColors thisUpdateColors -#endif - -extern XID clientErrorValue; - -static Pixel FindBestPixel( - EntryPtr /*pentFirst*/, - int /*size*/, - xrgb * /*prgb*/, - int /*channel*/ -); - -static int AllComp( - EntryPtr /*pent*/, - xrgb * /*prgb*/ -); - -static int RedComp( - EntryPtr /*pent*/, - xrgb * /*prgb*/ -); - -static int GreenComp( - EntryPtr /*pent*/, - xrgb * /*prgb*/ -); - -static int BlueComp( - EntryPtr /*pent*/, - xrgb * /*prgb*/ -); - -static void FreePixels( - ColormapPtr /*pmap*/, - int /*client*/ -); - -static void CopyFree( - int /*channel*/, - int /*client*/, - ColormapPtr /*pmapSrc*/, - ColormapPtr /*pmapDst*/ -); - -static void FreeCell( - ColormapPtr /*pmap*/, - Pixel /*i*/, - int /*channel*/ -); - -static void UpdateColors( - ColormapPtr /*pmap*/ -); - -static int AllocDirect( - int /*client*/, - ColormapPtr /*pmap*/, - int /*c*/, - int /*r*/, - int /*g*/, - int /*b*/, - Bool /*contig*/, - Pixel * /*pixels*/, - Pixel * /*prmask*/, - Pixel * /*pgmask*/, - Pixel * /*pbmask*/ -); - -static int AllocPseudo( - int /*client*/, - ColormapPtr /*pmap*/, - int /*c*/, - int /*r*/, - Bool /*contig*/, - Pixel * /*pixels*/, - Pixel * /*pmask*/, - Pixel ** /*pppixFirst*/ -); - -static Bool AllocCP( - ColormapPtr /*pmap*/, - EntryPtr /*pentFirst*/, - int /*count*/, - int /*planes*/, - Bool /*contig*/, - Pixel * /*pixels*/, - Pixel * /*pMask*/ -); - -static Bool AllocShared( - ColormapPtr /*pmap*/, - Pixel * /*ppix*/, - int /*c*/, - int /*r*/, - int /*g*/, - int /*b*/, - Pixel /*rmask*/, - Pixel /*gmask*/, - Pixel /*bmask*/, - Pixel * /*ppixFirst*/ -); - -static int FreeCo( - ColormapPtr /*pmap*/, - int /*client*/, - int /*color*/, - int /*npixIn*/, - Pixel * /*ppixIn*/, - Pixel /*mask*/ -); - -static int TellNoMap( - WindowPtr /*pwin*/, - Colormap * /*pmid*/ -); - -static void FindColorInRootCmap ( - ColormapPtr /* pmap */, - EntryPtr /* pentFirst */, - int /* size */, - xrgb* /* prgb */, - Pixel* /* pPixel */, - int /* channel */, - ColorCompareProcPtr /* comp */ -); - -#define NUMRED(vis) ((vis->redMask >> vis->offsetRed) + 1) -#define NUMGREEN(vis) ((vis->greenMask >> vis->offsetGreen) + 1) -#define NUMBLUE(vis) ((vis->blueMask >> vis->offsetBlue) + 1) -#if COMPOSITE -#define ALPHAMASK(vis) ((vis)->nplanes < 32 ? 0 : \ - (CARD32) ~((vis)->redMask|(vis)->greenMask|(vis)->blueMask)) -#else -#define ALPHAMASK(vis) 0 -#endif - -#define RGBMASK(vis) (vis->redMask | vis->greenMask | vis->blueMask | ALPHAMASK(vis)) - -/* GetNextBitsOrBreak(bits, mask, base) -- - * (Suggestion: First read the macro, then read this explanation. - * - * Either generate the next value to OR in to a pixel or break out of this - * while loop - * - * This macro is used when we're trying to generate all 2^n combinations of - * bits in mask. What we're doing here is counting in binary, except that - * the bits we use to count may not be contiguous. This macro will be - * called 2^n times, returning a different value in bits each time. Then - * it will cause us to break out of a surrounding loop. (It will always be - * called from within a while loop.) - * On call: mask is the value we want to find all the combinations for - * base has 1 bit set where the least significant bit of mask is set - * - * For example,if mask is 01010, base should be 0010 and we count like this: - * 00010 (see this isn't so hard), - * then we add base to bits and get 0100. (bits & ~mask) is (0100 & 0100) so - * we add that to bits getting (0100 + 0100) = - * 01000 for our next value. - * then we add 0010 to get - * 01010 and we're done (easy as 1, 2, 3) - */ -#define GetNextBitsOrBreak(bits, mask, base) \ - if((bits) == (mask)) \ - break; \ - (bits) += (base); \ - while((bits) & ~(mask)) \ - (bits) += ((bits) & ~(mask)); -/* ID of server as client */ -#define SERVER_ID 0 - -typedef struct _colorResource -{ - Colormap mid; - int client; -} colorResource; - -/* Invariants: - * refcnt == 0 means entry is empty - * refcnt > 0 means entry is useable by many clients, so it can't be changed - * refcnt == AllocPrivate means entry owned by one client only - * fShared should only be set if refcnt == AllocPrivate, and only in red map - */ - - -/** - * Create and initialize the color map - * - * \param mid resource to use for this colormap - * \param alloc 1 iff all entries are allocated writable - */ -int -CreateColormap (Colormap mid, ScreenPtr pScreen, VisualPtr pVisual, - ColormapPtr *ppcmap, int alloc, int client) -{ - int class, size; - unsigned long sizebytes; - ColormapPtr pmap; - EntryPtr pent; - int i; - Pixel *ppix, **pptr; - - class = pVisual->class; - if(!(class & DynamicClass) && (alloc != AllocNone) && (client != SERVER_ID)) - return (BadMatch); - - size = pVisual->ColormapEntries; - sizebytes = (size * sizeof(Entry)) + - (MAXCLIENTS * sizeof(Pixel *)) + - (MAXCLIENTS * sizeof(int)); - if ((class | DynamicClass) == DirectColor) - sizebytes *= 3; - sizebytes += sizeof(ColormapRec); - pmap = xalloc(sizebytes); - if (!pmap) - return (BadAlloc); -#if defined(_XSERVER64) - pmap->pad0 = 0; - pmap->pad1 = 0; -#if (X_BYTE_ORDER == X_LITTLE_ENDIAN) - pmap->pad2 = 0; -#endif -#endif - pmap->red = (EntryPtr)((char *)pmap + sizeof(ColormapRec)); - sizebytes = size * sizeof(Entry); - pmap->clientPixelsRed = (Pixel **)((char *)pmap->red + sizebytes); - pmap->numPixelsRed = (int *)((char *)pmap->clientPixelsRed + - (MAXCLIENTS * sizeof(Pixel *))); - pmap->mid = mid; - pmap->flags = 0; /* start out with all flags clear */ - if(mid == pScreen->defColormap) - pmap->flags |= IsDefault; - pmap->pScreen = pScreen; - pmap->pVisual = pVisual; - pmap->class = class; - if ((class | DynamicClass) == DirectColor) - size = NUMRED(pVisual); - pmap->freeRed = size; - bzero ((char *) pmap->red, (int)sizebytes); - bzero((char *) pmap->numPixelsRed, MAXCLIENTS * sizeof(int)); - for (pptr = &pmap->clientPixelsRed[MAXCLIENTS]; --pptr >= pmap->clientPixelsRed; ) - *pptr = (Pixel *)NULL; - if (alloc == AllocAll) - { - if (class & DynamicClass) - pmap->flags |= AllAllocated; - for (pent = &pmap->red[size - 1]; pent >= pmap->red; pent--) - pent->refcnt = AllocPrivate; - pmap->freeRed = 0; - ppix = xalloc(size * sizeof(Pixel)); - if (!ppix) - { - xfree(pmap); - return (BadAlloc); - } - pmap->clientPixelsRed[client] = ppix; - for(i = 0; i < size; i++) - ppix[i] = i; - pmap->numPixelsRed[client] = size; - } - - if ((class | DynamicClass) == DirectColor) - { - pmap->freeGreen = NUMGREEN(pVisual); - pmap->green = (EntryPtr)((char *)pmap->numPixelsRed + - (MAXCLIENTS * sizeof(int))); - pmap->clientPixelsGreen = (Pixel **)((char *)pmap->green + sizebytes); - pmap->numPixelsGreen = (int *)((char *)pmap->clientPixelsGreen + - (MAXCLIENTS * sizeof(Pixel *))); - pmap->freeBlue = NUMBLUE(pVisual); - pmap->blue = (EntryPtr)((char *)pmap->numPixelsGreen + - (MAXCLIENTS * sizeof(int))); - pmap->clientPixelsBlue = (Pixel **)((char *)pmap->blue + sizebytes); - pmap->numPixelsBlue = (int *)((char *)pmap->clientPixelsBlue + - (MAXCLIENTS * sizeof(Pixel *))); - - bzero ((char *) pmap->green, (int)sizebytes); - bzero ((char *) pmap->blue, (int)sizebytes); - - memmove((char *) pmap->clientPixelsGreen, - (char *) pmap->clientPixelsRed, - MAXCLIENTS * sizeof(Pixel *)); - memmove((char *) pmap->clientPixelsBlue, - (char *) pmap->clientPixelsRed, - MAXCLIENTS * sizeof(Pixel *)); - bzero((char *) pmap->numPixelsGreen, MAXCLIENTS * sizeof(int)); - bzero((char *) pmap->numPixelsBlue, MAXCLIENTS * sizeof(int)); - - /* If every cell is allocated, mark its refcnt */ - if (alloc == AllocAll) - { - size = pmap->freeGreen; - for(pent = &pmap->green[size-1]; pent >= pmap->green; pent--) - pent->refcnt = AllocPrivate; - pmap->freeGreen = 0; - ppix = xalloc(size * sizeof(Pixel)); - if (!ppix) - { - xfree(pmap->clientPixelsRed[client]); - xfree(pmap); - return(BadAlloc); - } - pmap->clientPixelsGreen[client] = ppix; - for(i = 0; i < size; i++) - ppix[i] = i; - pmap->numPixelsGreen[client] = size; - - size = pmap->freeBlue; - for(pent = &pmap->blue[size-1]; pent >= pmap->blue; pent--) - pent->refcnt = AllocPrivate; - pmap->freeBlue = 0; - ppix = xalloc(size * sizeof(Pixel)); - if (!ppix) - { - xfree(pmap->clientPixelsGreen[client]); - xfree(pmap->clientPixelsRed[client]); - xfree(pmap); - return(BadAlloc); - } - pmap->clientPixelsBlue[client] = ppix; - for(i = 0; i < size; i++) - ppix[i] = i; - pmap->numPixelsBlue[client] = size; - } - } - pmap->devPrivates = NULL; - pmap->flags |= BeingCreated; - - if (!AddResource(mid, RT_COLORMAP, (pointer)pmap)) - return (BadAlloc); - - /* - * Security creation/labeling check - */ - i = XaceHook(XACE_RESOURCE_ACCESS, clients[client], mid, RT_COLORMAP, - pmap, RT_NONE, NULL, DixCreateAccess); - if (i != Success) { - FreeResource(mid, RT_NONE); - return i; - } - - /* If the device wants a chance to initialize the colormap in any way, - * this is it. In specific, if this is a Static colormap, this is the - * time to fill in the colormap's values */ - if (!(*pScreen->CreateColormap)(pmap)) - { - FreeResource (mid, RT_NONE); - return BadAlloc; - } - pmap->flags &= ~BeingCreated; - *ppcmap = pmap; - return (Success); -} - -/** - * - * \param value must conform to DeleteType - */ -int -FreeColormap (pointer value, XID mid) -{ - int i; - EntryPtr pent; - ColormapPtr pmap = (ColormapPtr)value; - - if(CLIENT_ID(mid) != SERVER_ID) - { - (*pmap->pScreen->UninstallColormap) (pmap); - WalkTree(pmap->pScreen, (VisitWindowProcPtr)TellNoMap, (pointer) &mid); - } - - /* This is the device's chance to undo anything it needs to, especially - * to free any storage it allocated */ - (*pmap->pScreen->DestroyColormap)(pmap); - - if(pmap->clientPixelsRed) - { - for(i = 0; i < MAXCLIENTS; i++) - xfree(pmap->clientPixelsRed[i]); - } - - if ((pmap->class == PseudoColor) || (pmap->class == GrayScale)) - { - for(pent = &pmap->red[pmap->pVisual->ColormapEntries - 1]; - pent >= pmap->red; - pent--) - { - if(pent->fShared) - { - if (--pent->co.shco.red->refcnt == 0) - xfree(pent->co.shco.red); - if (--pent->co.shco.green->refcnt == 0) - xfree(pent->co.shco.green); - if (--pent->co.shco.blue->refcnt == 0) - xfree(pent->co.shco.blue); - } - } - } - if((pmap->class | DynamicClass) == DirectColor) - { - for(i = 0; i < MAXCLIENTS; i++) - { - xfree(pmap->clientPixelsGreen[i]); - xfree(pmap->clientPixelsBlue[i]); - } - } - - dixFreePrivates(pmap->devPrivates); - xfree(pmap); - return(Success); -} - -/* Tell window that pmid has disappeared */ -static int -TellNoMap (WindowPtr pwin, Colormap *pmid) -{ - xEvent xE; - - if (wColormap(pwin) == *pmid) - { - /* This should be call to DeliverEvent */ - xE.u.u.type = ColormapNotify; - xE.u.colormap.window = pwin->drawable.id; - xE.u.colormap.colormap = None; - xE.u.colormap.new = TRUE; - xE.u.colormap.state = ColormapUninstalled; -#ifdef PANORAMIX - if(noPanoramiXExtension || !pwin->drawable.pScreen->myNum) -#endif - DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL); - if (pwin->optional) { - pwin->optional->colormap = None; - CheckWindowOptionalNeed (pwin); - } - } - - return (WT_WALKCHILDREN); -} - -/* Tell window that pmid got uninstalled */ -int -TellLostMap (WindowPtr pwin, pointer value) -{ - Colormap *pmid = (Colormap *)value; - xEvent xE; - -#ifdef PANORAMIX - if(!noPanoramiXExtension && pwin->drawable.pScreen->myNum) - return WT_STOPWALKING; -#endif - if (wColormap(pwin) == *pmid) - { - /* This should be call to DeliverEvent */ - xE.u.u.type = ColormapNotify; - xE.u.colormap.window = pwin->drawable.id; - xE.u.colormap.colormap = *pmid; - xE.u.colormap.new = FALSE; - xE.u.colormap.state = ColormapUninstalled; - DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL); - } - - return (WT_WALKCHILDREN); -} - -/* Tell window that pmid got installed */ -int -TellGainedMap (WindowPtr pwin, pointer value) -{ - Colormap *pmid = (Colormap *)value; - xEvent xE; - -#ifdef PANORAMIX - if(!noPanoramiXExtension && pwin->drawable.pScreen->myNum) - return WT_STOPWALKING; -#endif - if (wColormap (pwin) == *pmid) - { - /* This should be call to DeliverEvent */ - xE.u.u.type = ColormapNotify; - xE.u.colormap.window = pwin->drawable.id; - xE.u.colormap.colormap = *pmid; - xE.u.colormap.new = FALSE; - xE.u.colormap.state = ColormapInstalled; - DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL); - } - - return (WT_WALKCHILDREN); -} - - -int -CopyColormapAndFree (Colormap mid, ColormapPtr pSrc, int client) -{ - ColormapPtr pmap = (ColormapPtr) NULL; - int result, alloc, size; - Colormap midSrc; - ScreenPtr pScreen; - VisualPtr pVisual; - - pScreen = pSrc->pScreen; - pVisual = pSrc->pVisual; - midSrc = pSrc->mid; - alloc = ((pSrc->flags & AllAllocated) && CLIENT_ID(midSrc) == client) ? - AllocAll : AllocNone; - size = pVisual->ColormapEntries; - - /* If the create returns non-0, it failed */ - result = CreateColormap (mid, pScreen, pVisual, &pmap, alloc, client); - if(result != Success) - return(result); - if(alloc == AllocAll) - { - memmove((char *)pmap->red, (char *)pSrc->red, size * sizeof(Entry)); - if((pmap->class | DynamicClass) == DirectColor) - { - memmove((char *)pmap->green, (char *)pSrc->green, size * sizeof(Entry)); - memmove((char *)pmap->blue, (char *)pSrc->blue, size * sizeof(Entry)); - } - pSrc->flags &= ~AllAllocated; - FreePixels(pSrc, client); - UpdateColors(pmap); - return(Success); - } - - CopyFree(REDMAP, client, pSrc, pmap); - if ((pmap->class | DynamicClass) == DirectColor) - { - CopyFree(GREENMAP, client, pSrc, pmap); - CopyFree(BLUEMAP, client, pSrc, pmap); - } - if (pmap->class & DynamicClass) - UpdateColors(pmap); - /* XXX should worry about removing any RT_CMAPENTRY resource */ - return(Success); -} - -/* Helper routine for freeing large numbers of cells from a map */ -static void -CopyFree (int channel, int client, ColormapPtr pmapSrc, ColormapPtr pmapDst) -{ - int z, npix; - EntryPtr pentSrcFirst, pentDstFirst; - EntryPtr pentSrc, pentDst; - Pixel *ppix; - int nalloc; - - switch(channel) - { - default: /* so compiler can see that everything gets initialized */ - case REDMAP: - ppix = (pmapSrc->clientPixelsRed)[client]; - npix = (pmapSrc->numPixelsRed)[client]; - pentSrcFirst = pmapSrc->red; - pentDstFirst = pmapDst->red; - break; - case GREENMAP: - ppix = (pmapSrc->clientPixelsGreen)[client]; - npix = (pmapSrc->numPixelsGreen)[client]; - pentSrcFirst = pmapSrc->green; - pentDstFirst = pmapDst->green; - break; - case BLUEMAP: - ppix = (pmapSrc->clientPixelsBlue)[client]; - npix = (pmapSrc->numPixelsBlue)[client]; - pentSrcFirst = pmapSrc->blue; - pentDstFirst = pmapDst->blue; - break; - } - nalloc = 0; - if (pmapSrc->class & DynamicClass) - { - for(z = npix; --z >= 0; ppix++) - { - /* Copy entries */ - pentSrc = pentSrcFirst + *ppix; - pentDst = pentDstFirst + *ppix; - if (pentDst->refcnt > 0) - { - pentDst->refcnt++; - } - else - { - *pentDst = *pentSrc; - nalloc++; - if (pentSrc->refcnt > 0) - pentDst->refcnt = 1; - else - pentSrc->fShared = FALSE; - } - FreeCell(pmapSrc, *ppix, channel); - } - } - - /* Note that FreeCell has already fixed pmapSrc->free{Color} */ - switch(channel) - { - case REDMAP: - pmapDst->freeRed -= nalloc; - (pmapDst->clientPixelsRed)[client] = - (pmapSrc->clientPixelsRed)[client]; - (pmapSrc->clientPixelsRed)[client] = (Pixel *) NULL; - (pmapDst->numPixelsRed)[client] = (pmapSrc->numPixelsRed)[client]; - (pmapSrc->numPixelsRed)[client] = 0; - break; - case GREENMAP: - pmapDst->freeGreen -= nalloc; - (pmapDst->clientPixelsGreen)[client] = - (pmapSrc->clientPixelsGreen)[client]; - (pmapSrc->clientPixelsGreen)[client] = (Pixel *) NULL; - (pmapDst->numPixelsGreen)[client] = (pmapSrc->numPixelsGreen)[client]; - (pmapSrc->numPixelsGreen)[client] = 0; - break; - case BLUEMAP: - pmapDst->freeBlue -= nalloc; - pmapDst->clientPixelsBlue[client] = pmapSrc->clientPixelsBlue[client]; - pmapSrc->clientPixelsBlue[client] = (Pixel *) NULL; - pmapDst->numPixelsBlue[client] = pmapSrc->numPixelsBlue[client]; - pmapSrc->numPixelsBlue[client] = 0; - break; - } -} - -/* Free the ith entry in a color map. Must handle freeing of - * colors allocated through AllocColorPlanes */ -static void -FreeCell (ColormapPtr pmap, Pixel i, int channel) -{ - EntryPtr pent; - int *pCount; - - - switch (channel) - { - default: /* so compiler can see that everything gets initialized */ - case PSEUDOMAP: - case REDMAP: - pent = (EntryPtr) &pmap->red[i]; - pCount = &pmap->freeRed; - break; - case GREENMAP: - pent = (EntryPtr) &pmap->green[i]; - pCount = &pmap->freeGreen; - break; - case BLUEMAP: - pent = (EntryPtr) &pmap->blue[i]; - pCount = &pmap->freeBlue; - break; - } - /* If it's not privately allocated and it's not time to free it, just - * decrement the count */ - if (pent->refcnt > 1) - pent->refcnt--; - else - { - /* If the color type is shared, find the sharedcolor. If decremented - * refcnt is 0, free the shared cell. */ - if (pent->fShared) - { - if(--pent->co.shco.red->refcnt == 0) - xfree(pent->co.shco.red); - if(--pent->co.shco.green->refcnt == 0) - xfree(pent->co.shco.green); - if(--pent->co.shco.blue->refcnt == 0) - xfree(pent->co.shco.blue); - pent->fShared = FALSE; - } - pent->refcnt = 0; - *pCount += 1; - } -} - -static void -UpdateColors (ColormapPtr pmap) -{ - xColorItem *defs; - xColorItem *pdef; - EntryPtr pent; - VisualPtr pVisual; - int i, n, size; - - pVisual = pmap->pVisual; - size = pVisual->ColormapEntries; - defs = xalloc(size * sizeof(xColorItem)); - if (!defs) - return; - n = 0; - pdef = defs; - if (pmap->class == DirectColor) - { - for (i = 0; i < size; i++) - { - if (!pmap->red[i].refcnt && - !pmap->green[i].refcnt && - !pmap->blue[i].refcnt) - continue; - pdef->pixel = ((Pixel)i << pVisual->offsetRed) | - ((Pixel)i << pVisual->offsetGreen) | - ((Pixel)i << pVisual->offsetBlue); - pdef->red = pmap->red[i].co.local.red; - pdef->green = pmap->green[i].co.local.green; - pdef->blue = pmap->blue[i].co.local.blue; - pdef->flags = DoRed|DoGreen|DoBlue; - pdef++; - n++; - } - } - else - { - for (i = 0, pent = pmap->red; i < size; i++, pent++) - { - if (!pent->refcnt) - continue; - pdef->pixel = i; - if(pent->fShared) - { - pdef->red = pent->co.shco.red->color; - pdef->green = pent->co.shco.green->color; - pdef->blue = pent->co.shco.blue->color; - } - else - { - pdef->red = pent->co.local.red; - pdef->green = pent->co.local.green; - pdef->blue = pent->co.local.blue; - } - pdef->flags = DoRed|DoGreen|DoBlue; - pdef++; - n++; - } - } - if (n) - (*pmap->pScreen->StoreColors)(pmap, n, defs); - xfree(defs); -} - -/* Get a read-only color from a ColorMap (probably slow for large maps) - * Returns by changing the value in pred, pgreen, pblue and pPix - */ -int -AllocColor (ColormapPtr pmap, - unsigned short *pred, unsigned short *pgreen, unsigned short *pblue, - Pixel *pPix, int client) -{ - Pixel pixR, pixG, pixB; - int entries; - xrgb rgb; - int class; - VisualPtr pVisual; - int npix; - Pixel *ppix; - - pVisual = pmap->pVisual; - (*pmap->pScreen->ResolveColor) (pred, pgreen, pblue, pVisual); - rgb.red = *pred; - rgb.green = *pgreen; - rgb.blue = *pblue; - class = pmap->class; - entries = pVisual->ColormapEntries; - - /* If the colormap is being created, then we want to be able to change - * the colormap, even if it's a static type. Otherwise, we'd never be - * able to initialize static colormaps - */ - if(pmap->flags & BeingCreated) - class |= DynamicClass; - - /* If this is one of the static storage classes, and we're not initializing - * it, the best we can do is to find the closest color entry to the - * requested one and return that. - */ - switch (class) { - case StaticColor: - case StaticGray: - /* Look up all three components in the same pmap */ - *pPix = pixR = FindBestPixel(pmap->red, entries, &rgb, PSEUDOMAP); - *pred = pmap->red[pixR].co.local.red; - *pgreen = pmap->red[pixR].co.local.green; - *pblue = pmap->red[pixR].co.local.blue; - npix = pmap->numPixelsRed[client]; - ppix = (Pixel *) xrealloc(pmap->clientPixelsRed[client], - (npix + 1) * sizeof(Pixel)); - if (!ppix) - return (BadAlloc); - ppix[npix] = pixR; - pmap->clientPixelsRed[client] = ppix; - pmap->numPixelsRed[client]++; - break; - - case TrueColor: - /* Look up each component in its own map, then OR them together */ - pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP); - pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb, GREENMAP); - pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP); - *pPix = (pixR << pVisual->offsetRed) | - (pixG << pVisual->offsetGreen) | - (pixB << pVisual->offsetBlue) | - ALPHAMASK(pVisual); - - *pred = pmap->red[pixR].co.local.red; - *pgreen = pmap->green[pixG].co.local.green; - *pblue = pmap->blue[pixB].co.local.blue; - npix = pmap->numPixelsRed[client]; - ppix = (Pixel *) xrealloc(pmap->clientPixelsRed[client], - (npix + 1) * sizeof(Pixel)); - if (!ppix) - return (BadAlloc); - ppix[npix] = pixR; - pmap->clientPixelsRed[client] = ppix; - npix = pmap->numPixelsGreen[client]; - ppix = (Pixel *) xrealloc(pmap->clientPixelsGreen[client], - (npix + 1) * sizeof(Pixel)); - if (!ppix) - return (BadAlloc); - ppix[npix] = pixG; - pmap->clientPixelsGreen[client] = ppix; - npix = pmap->numPixelsBlue[client]; - ppix = (Pixel *) xrealloc(pmap->clientPixelsBlue[client], - (npix + 1) * sizeof(Pixel)); - if (!ppix) - return (BadAlloc); - ppix[npix] = pixB; - pmap->clientPixelsBlue[client] = ppix; - pmap->numPixelsRed[client]++; - pmap->numPixelsGreen[client]++; - pmap->numPixelsBlue[client]++; - break; - - case GrayScale: - case PseudoColor: - if (pmap->mid != pmap->pScreen->defColormap && - pmap->pVisual->vid == pmap->pScreen->rootVisual) - { - ColormapPtr prootmap; - dixLookupResourceByType((pointer *)&prootmap, pmap->pScreen->defColormap, - RT_COLORMAP, clients[client], DixReadAccess); - - if (pmap->class == prootmap->class) - FindColorInRootCmap (prootmap, prootmap->red, entries, &rgb, - pPix, PSEUDOMAP, AllComp); - } - if (FindColor(pmap, pmap->red, entries, &rgb, pPix, PSEUDOMAP, - client, AllComp) != Success) - return (BadAlloc); - break; - - case DirectColor: - if (pmap->mid != pmap->pScreen->defColormap && - pmap->pVisual->vid == pmap->pScreen->rootVisual) - { - ColormapPtr prootmap; - dixLookupResourceByType((pointer *)&prootmap, pmap->pScreen->defColormap, - RT_COLORMAP, clients[client], DixReadAccess); - - if (pmap->class == prootmap->class) - { - pixR = (*pPix & pVisual->redMask) >> pVisual->offsetRed; - FindColorInRootCmap (prootmap, prootmap->red, entries, &rgb, - &pixR, REDMAP, RedComp); - pixG = (*pPix & pVisual->greenMask) >> pVisual->offsetGreen; - FindColorInRootCmap (prootmap, prootmap->green, entries, &rgb, - &pixG, GREENMAP, GreenComp); - pixB = (*pPix & pVisual->blueMask) >> pVisual->offsetBlue; - FindColorInRootCmap (prootmap, prootmap->blue, entries, &rgb, - &pixB, BLUEMAP, BlueComp); - *pPix = pixR | pixG | pixB; - } - } - - pixR = (*pPix & pVisual->redMask) >> pVisual->offsetRed; - if (FindColor(pmap, pmap->red, NUMRED(pVisual), &rgb, &pixR, REDMAP, - client, RedComp) != Success) - return (BadAlloc); - pixG = (*pPix & pVisual->greenMask) >> pVisual->offsetGreen; - if (FindColor(pmap, pmap->green, NUMGREEN(pVisual), &rgb, &pixG, - GREENMAP, client, GreenComp) != Success) - { - (void)FreeCo(pmap, client, REDMAP, 1, &pixR, (Pixel)0); - return (BadAlloc); - } - pixB = (*pPix & pVisual->blueMask) >> pVisual->offsetBlue; - if (FindColor(pmap, pmap->blue, NUMBLUE(pVisual), &rgb, &pixB, BLUEMAP, - client, BlueComp) != Success) - { - (void)FreeCo(pmap, client, GREENMAP, 1, &pixG, (Pixel)0); - (void)FreeCo(pmap, client, REDMAP, 1, &pixR, (Pixel)0); - return (BadAlloc); - } - *pPix = pixR | pixG | pixB | ALPHAMASK(pVisual); - - break; - } - - /* if this is the client's first pixel in this colormap, tell the - * resource manager that the client has pixels in this colormap which - * should be freed when the client dies */ - if ((pmap->numPixelsRed[client] == 1) && - (CLIENT_ID(pmap->mid) != client) && - !(pmap->flags & BeingCreated)) - { - colorResource *pcr; - - pcr = xalloc(sizeof(colorResource)); - if (!pcr) - { - (void)FreeColors(pmap, client, 1, pPix, (Pixel)0); - return (BadAlloc); - } - pcr->mid = pmap->mid; - pcr->client = client; - if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr)) - return (BadAlloc); - } - return (Success); -} - -/* - * FakeAllocColor -- fake an AllocColor request by - * returning a free pixel if availible, otherwise returning - * the closest matching pixel. This is used by the mi - * software sprite code to recolor cursors. A nice side-effect - * is that this routine will never return failure. - */ - -void -FakeAllocColor (ColormapPtr pmap, xColorItem *item) -{ - Pixel pixR, pixG, pixB; - Pixel temp; - int entries; - xrgb rgb; - int class; - VisualPtr pVisual; - - pVisual = pmap->pVisual; - rgb.red = item->red; - rgb.green = item->green; - rgb.blue = item->blue; - (*pmap->pScreen->ResolveColor) (&rgb.red, &rgb.green, &rgb.blue, pVisual); - class = pmap->class; - entries = pVisual->ColormapEntries; - - switch (class) { - case GrayScale: - case PseudoColor: - temp = 0; - item->pixel = 0; - if (FindColor(pmap, pmap->red, entries, &rgb, &temp, PSEUDOMAP, - -1, AllComp) == Success) { - item->pixel = temp; - break; - } - /* fall through ... */ - case StaticColor: - case StaticGray: - item->pixel = FindBestPixel(pmap->red, entries, &rgb, PSEUDOMAP); - break; - - case DirectColor: - /* Look up each component in its own map, then OR them together */ - pixR = (item->pixel & pVisual->redMask) >> pVisual->offsetRed; - pixG = (item->pixel & pVisual->greenMask) >> pVisual->offsetGreen; - pixB = (item->pixel & pVisual->blueMask) >> pVisual->offsetBlue; - if (FindColor(pmap, pmap->red, NUMRED(pVisual), &rgb, &pixR, REDMAP, - -1, RedComp) != Success) - pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP) - << pVisual->offsetRed; - if (FindColor(pmap, pmap->green, NUMGREEN(pVisual), &rgb, &pixG, - GREENMAP, -1, GreenComp) != Success) - pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb, - GREENMAP) << pVisual->offsetGreen; - if (FindColor(pmap, pmap->blue, NUMBLUE(pVisual), &rgb, &pixB, BLUEMAP, - -1, BlueComp) != Success) - pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP) - << pVisual->offsetBlue; - item->pixel = pixR | pixG | pixB; - break; - - case TrueColor: - /* Look up each component in its own map, then OR them together */ - pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP); - pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb, GREENMAP); - pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP); - item->pixel = (pixR << pVisual->offsetRed) | - (pixG << pVisual->offsetGreen) | - (pixB << pVisual->offsetBlue); - break; - } -} - -/* free a pixel value obtained from FakeAllocColor */ -void -FakeFreeColor(ColormapPtr pmap, Pixel pixel) -{ - VisualPtr pVisual; - Pixel pixR, pixG, pixB; - - switch (pmap->class) { - case GrayScale: - case PseudoColor: - if (pmap->red[pixel].refcnt == AllocTemporary) - pmap->red[pixel].refcnt = 0; - break; - case DirectColor: - pVisual = pmap->pVisual; - pixR = (pixel & pVisual->redMask) >> pVisual->offsetRed; - pixG = (pixel & pVisual->greenMask) >> pVisual->offsetGreen; - pixB = (pixel & pVisual->blueMask) >> pVisual->offsetBlue; - if (pmap->red[pixR].refcnt == AllocTemporary) - pmap->red[pixR].refcnt = 0; - if (pmap->green[pixG].refcnt == AllocTemporary) - pmap->green[pixG].refcnt = 0; - if (pmap->blue[pixB].refcnt == AllocTemporary) - pmap->blue[pixB].refcnt = 0; - break; - } -} - -typedef unsigned short BigNumUpper; -typedef unsigned long BigNumLower; - -#define BIGNUMLOWERBITS 24 -#define BIGNUMUPPERBITS 16 -#define BIGNUMLOWER (1 << BIGNUMLOWERBITS) -#define BIGNUMUPPER (1 << BIGNUMUPPERBITS) -#define UPPERPART(i) ((i) >> BIGNUMLOWERBITS) -#define LOWERPART(i) ((i) & (BIGNUMLOWER - 1)) - -typedef struct _bignum { - BigNumUpper upper; - BigNumLower lower; -} BigNumRec, *BigNumPtr; - -#define BigNumGreater(x,y) (((x)->upper > (y)->upper) ||\ - ((x)->upper == (y)->upper && (x)->lower > (y)->lower)) - -#define UnsignedToBigNum(u,r) (((r)->upper = UPPERPART(u)), \ - ((r)->lower = LOWERPART(u))) - -#define MaxBigNum(r) (((r)->upper = BIGNUMUPPER-1), \ - ((r)->lower = BIGNUMLOWER-1)) - -static void -BigNumAdd (BigNumPtr x, BigNumPtr y, BigNumPtr r) -{ - BigNumLower lower, carry = 0; - - lower = x->lower + y->lower; - if (lower >= BIGNUMLOWER) { - lower -= BIGNUMLOWER; - carry = 1; - } - r->lower = lower; - r->upper = x->upper + y->upper + carry; -} - -static Pixel -FindBestPixel(EntryPtr pentFirst, int size, xrgb *prgb, int channel) -{ - EntryPtr pent; - Pixel pixel, final; - long dr, dg, db; - unsigned long sq; - BigNumRec minval, sum, temp; - - final = 0; - MaxBigNum(&minval); - /* look for the minimal difference */ - for (pent = pentFirst, pixel = 0; pixel < size; pent++, pixel++) - { - dr = dg = db = 0; - switch(channel) - { - case PSEUDOMAP: - dg = (long) pent->co.local.green - prgb->green; - db = (long) pent->co.local.blue - prgb->blue; - case REDMAP: - dr = (long) pent->co.local.red - prgb->red; - break; - case GREENMAP: - dg = (long) pent->co.local.green - prgb->green; - break; - case BLUEMAP: - db = (long) pent->co.local.blue - prgb->blue; - break; - } - sq = dr * dr; - UnsignedToBigNum (sq, &sum); - sq = dg * dg; - UnsignedToBigNum (sq, &temp); - BigNumAdd (&sum, &temp, &sum); - sq = db * db; - UnsignedToBigNum (sq, &temp); - BigNumAdd (&sum, &temp, &sum); - if (BigNumGreater (&minval, &sum)) - { - final = pixel; - minval = sum; - } - } - return(final); -} - -static void -FindColorInRootCmap (ColormapPtr pmap, EntryPtr pentFirst, int size, - xrgb *prgb, Pixel *pPixel, int channel, - ColorCompareProcPtr comp) -{ - EntryPtr pent; - Pixel pixel; - int count; - - if ((pixel = *pPixel) >= size) - pixel = 0; - for (pent = pentFirst + pixel, count = size; --count >= 0; pent++, pixel++) - { - if (pent->refcnt > 0 && (*comp) (pent, prgb)) - { - switch (channel) - { - case REDMAP: - pixel <<= pmap->pVisual->offsetRed; - break; - case GREENMAP: - pixel <<= pmap->pVisual->offsetGreen; - break; - case BLUEMAP: - pixel <<= pmap->pVisual->offsetBlue; - break; - default: /* PSEUDOMAP */ - break; - } - *pPixel = pixel; - } - } -} - -/* Tries to find a color in pmap that exactly matches the one requested in prgb - * if it can't it allocates one. - * Starts looking at pentFirst + *pPixel, so if you want a specific pixel, - * load *pPixel with that value, otherwise set it to 0 - */ -int -FindColor (ColormapPtr pmap, EntryPtr pentFirst, int size, xrgb *prgb, - Pixel *pPixel, int channel, int client, - ColorCompareProcPtr comp) -{ - EntryPtr pent; - Bool foundFree; - Pixel pixel, Free = 0; - int npix, count, *nump = NULL; - Pixel **pixp = NULL, *ppix; - xColorItem def; - - foundFree = FALSE; - - if((pixel = *pPixel) >= size) - pixel = 0; - /* see if there is a match, and also look for a free entry */ - for (pent = pentFirst + pixel, count = size; --count >= 0; ) - { - if (pent->refcnt > 0) - { - if ((*comp) (pent, prgb)) - { - if (client >= 0) - pent->refcnt++; - *pPixel = pixel; - switch(channel) - { - case REDMAP: - *pPixel <<= pmap->pVisual->offsetRed; - case PSEUDOMAP: - break; - case GREENMAP: - *pPixel <<= pmap->pVisual->offsetGreen; - break; - case BLUEMAP: - *pPixel <<= pmap->pVisual->offsetBlue; - break; - } - goto gotit; - } - } - else if (!foundFree && pent->refcnt == 0) - { - Free = pixel; - foundFree = TRUE; - /* If we're initializing the colormap, then we are looking for - * the first free cell we can find, not to minimize the number - * of entries we use. So don't look any further. */ - if(pmap->flags & BeingCreated) - break; - } - pixel++; - if(pixel >= size) - { - pent = pentFirst; - pixel = 0; - } - else - pent++; - } - - /* If we got here, we didn't find a match. If we also didn't find - * a free entry, we're out of luck. Otherwise, we'll usurp a free - * entry and fill it in */ - if (!foundFree) - return (BadAlloc); - pent = pentFirst + Free; - pent->fShared = FALSE; - pent->refcnt = (client >= 0) ? 1 : AllocTemporary; - - switch (channel) - { - case PSEUDOMAP: - pent->co.local.red = prgb->red; - pent->co.local.green = prgb->green; - pent->co.local.blue = prgb->blue; - def.red = prgb->red; - def.green = prgb->green; - def.blue = prgb->blue; - def.flags = (DoRed|DoGreen|DoBlue); - if (client >= 0) - pmap->freeRed--; - def.pixel = Free; - break; - - case REDMAP: - pent->co.local.red = prgb->red; - def.red = prgb->red; - def.green = pmap->green[0].co.local.green; - def.blue = pmap->blue[0].co.local.blue; - def.flags = DoRed; - if (client >= 0) - pmap->freeRed--; - def.pixel = Free << pmap->pVisual->offsetRed; - break; - - case GREENMAP: - pent->co.local.green = prgb->green; - def.red = pmap->red[0].co.local.red; - def.green = prgb->green; - def.blue = pmap->blue[0].co.local.blue; - def.flags = DoGreen; - if (client >= 0) - pmap->freeGreen--; - def.pixel = Free << pmap->pVisual->offsetGreen; - break; - - case BLUEMAP: - pent->co.local.blue = prgb->blue; - def.red = pmap->red[0].co.local.red; - def.green = pmap->green[0].co.local.green; - def.blue = prgb->blue; - def.flags = DoBlue; - if (client >= 0) - pmap->freeBlue--; - def.pixel = Free << pmap->pVisual->offsetBlue; - break; - } - (*pmap->pScreen->StoreColors) (pmap, 1, &def); - pixel = Free; - *pPixel = def.pixel; - -gotit: - if (pmap->flags & BeingCreated || client == -1) - return(Success); - /* Now remember the pixel, for freeing later */ - switch (channel) - { - case PSEUDOMAP: - case REDMAP: - nump = pmap->numPixelsRed; - pixp = pmap->clientPixelsRed; - break; - - case GREENMAP: - nump = pmap->numPixelsGreen; - pixp = pmap->clientPixelsGreen; - break; - - case BLUEMAP: - nump = pmap->numPixelsBlue; - pixp = pmap->clientPixelsBlue; - break; - } - npix = nump[client]; - ppix = (Pixel *) xrealloc (pixp[client], (npix + 1) * sizeof(Pixel)); - if (!ppix) - { - pent->refcnt--; - if (!pent->fShared) - switch (channel) - { - case PSEUDOMAP: - case REDMAP: - pmap->freeRed++; - break; - case GREENMAP: - pmap->freeGreen++; - break; - case BLUEMAP: - pmap->freeBlue++; - break; - } - return(BadAlloc); - } - ppix[npix] = pixel; - pixp[client] = ppix; - nump[client]++; - - return(Success); -} - -/* Comparison functions -- passed to FindColor to determine if an - * entry is already the color we're looking for or not */ -static int -AllComp (EntryPtr pent, xrgb *prgb) -{ - if((pent->co.local.red == prgb->red) && - (pent->co.local.green == prgb->green) && - (pent->co.local.blue == prgb->blue) ) - return (1); - return (0); -} - -static int -RedComp (EntryPtr pent, xrgb *prgb) -{ - if (pent->co.local.red == prgb->red) - return (1); - return (0); -} - -static int -GreenComp (EntryPtr pent, xrgb *prgb) -{ - if (pent->co.local.green == prgb->green) - return (1); - return (0); -} - -static int -BlueComp (EntryPtr pent, xrgb *prgb) -{ - if (pent->co.local.blue == prgb->blue) - return (1); - return (0); -} - - -/* Read the color value of a cell */ - -int -QueryColors (ColormapPtr pmap, int count, Pixel *ppixIn, xrgb *prgbList) -{ - Pixel *ppix, pixel; - xrgb *prgb; - VisualPtr pVisual; - EntryPtr pent; - Pixel i; - int errVal = Success; - - pVisual = pmap->pVisual; - if ((pmap->class | DynamicClass) == DirectColor) - { - int numred, numgreen, numblue; - Pixel rgbbad; - - numred = NUMRED(pVisual); - numgreen = NUMGREEN(pVisual); - numblue = NUMBLUE(pVisual); - rgbbad = ~RGBMASK(pVisual); - for( ppix = ppixIn, prgb = prgbList; --count >= 0; ppix++, prgb++) - { - pixel = *ppix; - if (pixel & rgbbad) { - clientErrorValue = pixel; - errVal = BadValue; - continue; - } - i = (pixel & pVisual->redMask) >> pVisual->offsetRed; - if (i >= numred) - { - clientErrorValue = pixel; - errVal = BadValue; - continue; - } - prgb->red = pmap->red[i].co.local.red; - i = (pixel & pVisual->greenMask) >> pVisual->offsetGreen; - if (i >= numgreen) - { - clientErrorValue = pixel; - errVal = BadValue; - continue; - } - prgb->green = pmap->green[i].co.local.green; - i = (pixel & pVisual->blueMask) >> pVisual->offsetBlue; - if (i >= numblue) - { - clientErrorValue = pixel; - errVal = BadValue; - continue; - } - prgb->blue = pmap->blue[i].co.local.blue; - } - } - else - { - for( ppix = ppixIn, prgb = prgbList; --count >= 0; ppix++, prgb++) - { - pixel = *ppix; - if (pixel >= pVisual->ColormapEntries) - { - clientErrorValue = pixel; - errVal = BadValue; - } - else - { - pent = (EntryPtr)&pmap->red[pixel]; - if (pent->fShared) - { - prgb->red = pent->co.shco.red->color; - prgb->green = pent->co.shco.green->color; - prgb->blue = pent->co.shco.blue->color; - } - else - { - prgb->red = pent->co.local.red; - prgb->green = pent->co.local.green; - prgb->blue = pent->co.local.blue; - } - } - } - } - return (errVal); -} - -static void -FreePixels(ColormapPtr pmap, int client) -{ - Pixel *ppix, *ppixStart; - int n; - int class; - - class = pmap->class; - ppixStart = pmap->clientPixelsRed[client]; - if (class & DynamicClass) - { - n = pmap->numPixelsRed[client]; - for (ppix = ppixStart; --n >= 0; ) - { - FreeCell(pmap, *ppix, REDMAP); - ppix++; - } - } - - xfree(ppixStart); - pmap->clientPixelsRed[client] = (Pixel *) NULL; - pmap->numPixelsRed[client] = 0; - if ((class | DynamicClass) == DirectColor) - { - ppixStart = pmap->clientPixelsGreen[client]; - if (class & DynamicClass) - for (ppix = ppixStart, n = pmap->numPixelsGreen[client]; --n >= 0;) - FreeCell(pmap, *ppix++, GREENMAP); - xfree(ppixStart); - pmap->clientPixelsGreen[client] = (Pixel *) NULL; - pmap->numPixelsGreen[client] = 0; - - ppixStart = pmap->clientPixelsBlue[client]; - if (class & DynamicClass) - for (ppix = ppixStart, n = pmap->numPixelsBlue[client]; --n >= 0; ) - FreeCell(pmap, *ppix++, BLUEMAP); - xfree(ppixStart); - pmap->clientPixelsBlue[client] = (Pixel *) NULL; - pmap->numPixelsBlue[client] = 0; - } -} - -/** - * Frees all of a client's colors and cells. - * - * \param value must conform to DeleteType - * \unused fakeid - */ -int -FreeClientPixels (pointer value, XID fakeid) -{ - pointer pmap; - colorResource *pcr = value; - int rc; - - rc = dixLookupResourceByType(&pmap, pcr->mid, RT_COLORMAP, serverClient, - DixRemoveAccess); - if (rc == Success) - FreePixels((ColormapPtr)pmap, pcr->client); - xfree(pcr); - return Success; -} - -int -AllocColorCells (int client, ColormapPtr pmap, int colors, int planes, - Bool contig, Pixel *ppix, Pixel *masks) -{ - Pixel rmask, gmask, bmask, *ppixFirst, r, g, b; - int n, class; - int ok; - int oldcount; - colorResource *pcr = (colorResource *)NULL; - - class = pmap->class; - if (!(class & DynamicClass)) - return (BadAlloc); /* Shouldn't try on this type */ - oldcount = pmap->numPixelsRed[client]; - if (pmap->class == DirectColor) - oldcount += pmap->numPixelsGreen[client] + pmap->numPixelsBlue[client]; - if (!oldcount && (CLIENT_ID(pmap->mid) != client)) - { - pcr = xalloc(sizeof(colorResource)); - if (!pcr) - return (BadAlloc); - } - - if (pmap->class == DirectColor) - { - ok = AllocDirect (client, pmap, colors, planes, planes, planes, - contig, ppix, &rmask, &gmask, &bmask); - if(ok == Success) - { - for (r = g = b = 1, n = planes; --n >= 0; r += r, g += g, b += b) - { - while(!(rmask & r)) - r += r; - while(!(gmask & g)) - g += g; - while(!(bmask & b)) - b += b; - *masks++ = r | g | b; - } - } - } - else - { - ok = AllocPseudo (client, pmap, colors, planes, contig, ppix, &rmask, - &ppixFirst); - if(ok == Success) - { - for (r = 1, n = planes; --n >= 0; r += r) - { - while(!(rmask & r)) - r += r; - *masks++ = r; - } - } - } - - /* if this is the client's first pixels in this colormap, tell the - * resource manager that the client has pixels in this colormap which - * should be freed when the client dies */ - if ((ok == Success) && pcr) - { - pcr->mid = pmap->mid; - pcr->client = client; - if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr)) - ok = BadAlloc; - } else if (pcr) - xfree(pcr); - - return (ok); -} - - -int -AllocColorPlanes (int client, ColormapPtr pmap, int colors, - int r, int g, int b, Bool contig, Pixel *pixels, - Pixel *prmask, Pixel *pgmask, Pixel *pbmask) -{ - int ok; - Pixel mask, *ppixFirst; - Pixel shift; - int i; - int class; - int oldcount; - colorResource *pcr = (colorResource *)NULL; - - class = pmap->class; - if (!(class & DynamicClass)) - return (BadAlloc); /* Shouldn't try on this type */ - oldcount = pmap->numPixelsRed[client]; - if (class == DirectColor) - oldcount += pmap->numPixelsGreen[client] + pmap->numPixelsBlue[client]; - if (!oldcount && (CLIENT_ID(pmap->mid) != client)) - { - pcr = xalloc(sizeof(colorResource)); - if (!pcr) - return (BadAlloc); - } - - if (class == DirectColor) - { - ok = AllocDirect (client, pmap, colors, r, g, b, contig, pixels, - prmask, pgmask, pbmask); - } - else - { - /* Allocate the proper pixels */ - /* XXX This is sort of bad, because of contig is set, we force all - * r + g + b bits to be contiguous. Should only force contiguity - * per mask - */ - ok = AllocPseudo (client, pmap, colors, r + g + b, contig, pixels, - &mask, &ppixFirst); - - if(ok == Success) - { - /* now split that mask into three */ - *prmask = *pgmask = *pbmask = 0; - shift = 1; - for (i = r; --i >= 0; shift += shift) - { - while (!(mask & shift)) - shift += shift; - *prmask |= shift; - } - for (i = g; --i >= 0; shift += shift) - { - while (!(mask & shift)) - shift += shift; - *pgmask |= shift; - } - for (i = b; --i >= 0; shift += shift) - { - while (!(mask & shift)) - shift += shift; - *pbmask |= shift; - } - - /* set up the shared color cells */ - if (!AllocShared(pmap, pixels, colors, r, g, b, - *prmask, *pgmask, *pbmask, ppixFirst)) - { - (void)FreeColors(pmap, client, colors, pixels, mask); - ok = BadAlloc; - } - } - } - - /* if this is the client's first pixels in this colormap, tell the - * resource manager that the client has pixels in this colormap which - * should be freed when the client dies */ - if ((ok == Success) && pcr) - { - pcr->mid = pmap->mid; - pcr->client = client; - if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr)) - ok = BadAlloc; - } else if (pcr) - xfree(pcr); - - return (ok); -} - -static int -AllocDirect (int client, ColormapPtr pmap, int c, int r, int g, int b, Bool contig, - Pixel *pixels, Pixel *prmask, Pixel *pgmask, Pixel *pbmask) -{ - Pixel *ppixRed, *ppixGreen, *ppixBlue; - Pixel *ppix, *pDst, *p; - int npix, npixR, npixG, npixB; - Bool okR, okG, okB; - Pixel *rpix = 0, *gpix = 0, *bpix = 0; - - npixR = c << r; - npixG = c << g; - npixB = c << b; - if ((r >= 32) || (g >= 32) || (b >= 32) || - (npixR > pmap->freeRed) || (npixR < c) || - (npixG > pmap->freeGreen) || (npixG < c) || - (npixB > pmap->freeBlue) || (npixB < c)) - return BadAlloc; - - /* start out with empty pixels */ - for(p = pixels; p < pixels + c; p++) - *p = 0; - - ppixRed = xalloc(npixR * sizeof(Pixel)); - ppixGreen = xalloc(npixG * sizeof(Pixel)); - ppixBlue = xalloc(npixB * sizeof(Pixel)); - if (!ppixRed || !ppixGreen || !ppixBlue) - { - if (ppixBlue) xfree(ppixBlue); - if (ppixGreen) xfree(ppixGreen); - if (ppixRed) xfree(ppixRed); - return(BadAlloc); - } - - okR = AllocCP(pmap, pmap->red, c, r, contig, ppixRed, prmask); - okG = AllocCP(pmap, pmap->green, c, g, contig, ppixGreen, pgmask); - okB = AllocCP(pmap, pmap->blue, c, b, contig, ppixBlue, pbmask); - - if (okR && okG && okB) - { - rpix = (Pixel *) xrealloc(pmap->clientPixelsRed[client], - (pmap->numPixelsRed[client] + (c << r)) * - sizeof(Pixel)); - if (rpix) - pmap->clientPixelsRed[client] = rpix; - gpix = (Pixel *) xrealloc(pmap->clientPixelsGreen[client], - (pmap->numPixelsGreen[client] + (c << g)) * - sizeof(Pixel)); - if (gpix) - pmap->clientPixelsGreen[client] = gpix; - bpix = (Pixel *) xrealloc(pmap->clientPixelsBlue[client], - (pmap->numPixelsBlue[client] + (c << b)) * - sizeof(Pixel)); - if (bpix) - pmap->clientPixelsBlue[client] = bpix; - } - - if (!okR || !okG || !okB || !rpix || !gpix || !bpix) - { - if (okR) - for(ppix = ppixRed, npix = npixR; --npix >= 0; ppix++) - pmap->red[*ppix].refcnt = 0; - if (okG) - for(ppix = ppixGreen, npix = npixG; --npix >= 0; ppix++) - pmap->green[*ppix].refcnt = 0; - if (okB) - for(ppix = ppixBlue, npix = npixB; --npix >= 0; ppix++) - pmap->blue[*ppix].refcnt = 0; - xfree(ppixBlue); - xfree(ppixGreen); - xfree(ppixRed); - return(BadAlloc); - } - - *prmask <<= pmap->pVisual->offsetRed; - *pgmask <<= pmap->pVisual->offsetGreen; - *pbmask <<= pmap->pVisual->offsetBlue; - - ppix = rpix + pmap->numPixelsRed[client]; - for (pDst = pixels, p = ppixRed; p < ppixRed + npixR; p++) - { - *ppix++ = *p; - if(p < ppixRed + c) - *pDst++ |= *p << pmap->pVisual->offsetRed; - } - pmap->numPixelsRed[client] += npixR; - pmap->freeRed -= npixR; - - ppix = gpix + pmap->numPixelsGreen[client]; - for (pDst = pixels, p = ppixGreen; p < ppixGreen + npixG; p++) - { - *ppix++ = *p; - if(p < ppixGreen + c) - *pDst++ |= *p << pmap->pVisual->offsetGreen; - } - pmap->numPixelsGreen[client] += npixG; - pmap->freeGreen -= npixG; - - ppix = bpix + pmap->numPixelsBlue[client]; - for (pDst = pixels, p = ppixBlue; p < ppixBlue + npixB; p++) - { - *ppix++ = *p; - if(p < ppixBlue + c) - *pDst++ |= *p << pmap->pVisual->offsetBlue; - } - pmap->numPixelsBlue[client] += npixB; - pmap->freeBlue -= npixB; - - - for (pDst = pixels; pDst < pixels + c; pDst++) - *pDst |= ALPHAMASK(pmap->pVisual); - - xfree(ppixBlue); - xfree(ppixGreen); - xfree(ppixRed); - - return (Success); -} - -static int -AllocPseudo (int client, ColormapPtr pmap, int c, int r, Bool contig, - Pixel *pixels, Pixel *pmask, Pixel **pppixFirst) -{ - Pixel *ppix, *p, *pDst, *ppixTemp; - int npix; - Bool ok; - - npix = c << r; - if ((r >= 32) || (npix > pmap->freeRed) || (npix < c)) - return(BadAlloc); - if(!(ppixTemp = xalloc(npix * sizeof(Pixel)))) - return(BadAlloc); - ok = AllocCP(pmap, pmap->red, c, r, contig, ppixTemp, pmask); - - if (ok) - { - - /* all the allocated pixels are added to the client pixel list, - * but only the unique ones are returned to the client */ - ppix = (Pixel *)xrealloc(pmap->clientPixelsRed[client], - (pmap->numPixelsRed[client] + npix) * sizeof(Pixel)); - if (!ppix) - { - for (p = ppixTemp; p < ppixTemp + npix; p++) - pmap->red[*p].refcnt = 0; - return (BadAlloc); - } - pmap->clientPixelsRed[client] = ppix; - ppix += pmap->numPixelsRed[client]; - *pppixFirst = ppix; - pDst = pixels; - for (p = ppixTemp; p < ppixTemp + npix; p++) - { - *ppix++ = *p; - if(p < ppixTemp + c) - *pDst++ = *p; - } - pmap->numPixelsRed[client] += npix; - pmap->freeRed -= npix; - } - xfree(ppixTemp); - return (ok ? Success : BadAlloc); -} - -/* Allocates count << planes pixels from colormap pmap for client. If - * contig, then the plane mask is made of consecutive bits. Returns - * all count << pixels in the array pixels. The first count of those - * pixels are the unique pixels. *pMask has the mask to Or with the - * unique pixels to get the rest of them. - * - * Returns True iff all pixels could be allocated - * All cells allocated will have refcnt set to AllocPrivate and shared to FALSE - * (see AllocShared for why we care) - */ -static Bool -AllocCP (ColormapPtr pmap, EntryPtr pentFirst, int count, int planes, - Bool contig, Pixel *pixels, Pixel *pMask) -{ - EntryPtr ent; - Pixel pixel, base, entries, maxp, save; - int dplanes, found; - Pixel *ppix; - Pixel mask; - Pixel finalmask; - - dplanes = pmap->pVisual->nplanes; - - /* Easy case. Allocate pixels only */ - if (planes == 0) - { - /* allocate writable entries */ - ppix = pixels; - ent = pentFirst; - pixel = 0; - while (--count >= 0) - { - /* Just find count unallocated cells */ - while (ent->refcnt) - { - ent++; - pixel++; - } - ent->refcnt = AllocPrivate; - *ppix++ = pixel; - ent->fShared = FALSE; - } - *pMask = 0; - return (TRUE); - } - else if (planes > dplanes) - { - return (FALSE); - } - - /* General case count pixels * 2 ^ planes cells to be allocated */ - - /* make room for new pixels */ - ent = pentFirst; - - /* first try for contiguous planes, since it's fastest */ - for (mask = (((Pixel)1) << planes) - 1, base = 1, dplanes -= (planes - 1); - --dplanes >= 0; - mask += mask, base += base) - { - ppix = pixels; - found = 0; - pixel = 0; - entries = pmap->pVisual->ColormapEntries - mask; - while (pixel < entries) - { - save = pixel; - maxp = pixel + mask + base; - /* check if all are free */ - while (pixel != maxp && ent[pixel].refcnt == 0) - pixel += base; - if (pixel == maxp) - { - /* this one works */ - *ppix++ = save; - found++; - if (found == count) - { - /* found enough, allocate them all */ - while (--count >= 0) - { - pixel = pixels[count]; - maxp = pixel + mask; - while (1) - { - ent[pixel].refcnt = AllocPrivate; - ent[pixel].fShared = FALSE; - if (pixel == maxp) - break; - pixel += base; - *ppix++ = pixel; - } - } - *pMask = mask; - return (TRUE); - } - } - pixel = save + 1; - if (pixel & mask) - pixel += mask; - } - } - - dplanes = pmap->pVisual->nplanes; - if (contig || planes == 1 || dplanes < 3) - return (FALSE); - - /* this will be very slow for large maps, need a better algorithm */ - - /* - we can generate the smallest and largest numbers that fits in dplanes - bits and contain exactly planes bits set as follows. First, we need to - check that it is possible to generate such a mask at all. - (Non-contiguous masks need one more bit than contiguous masks). Then - the smallest such mask consists of the rightmost planes-1 bits set, then - a zero, then a one in position planes + 1. The formula is - (3 << (planes-1)) -1 - The largest such masks consists of the leftmost planes-1 bits set, then - a zero, then a one bit in position dplanes-planes-1. If dplanes is - smaller than 32 (the number of bits in a word) then the formula is: - (1<<dplanes) - (1<<(dplanes-planes+1) + (1<<dplanes-planes-1) - If dplanes = 32, then we can't calculate (1<<dplanes) and we have - to use: - ( (1<<(planes-1)) - 1) << (dplanes-planes+1) + (1<<(dplanes-planes-1)) - - << Thank you, Loretta>>> - - */ - - finalmask = - (((((Pixel)1)<<(planes-1)) - 1) << (dplanes-planes+1)) + - (((Pixel)1)<<(dplanes-planes-1)); - for (mask = (((Pixel)3) << (planes -1)) - 1; mask <= finalmask; mask++) - { - /* next 3 magic statements count number of ones (HAKMEM #169) */ - pixel = (mask >> 1) & 033333333333; - pixel = mask - pixel - ((pixel >> 1) & 033333333333); - if ((((pixel + (pixel >> 3)) & 030707070707) % 077) != planes) - continue; - ppix = pixels; - found = 0; - entries = pmap->pVisual->ColormapEntries - mask; - base = lowbit (mask); - for (pixel = 0; pixel < entries; pixel++) - { - if (pixel & mask) - continue; - maxp = 0; - /* check if all are free */ - while (ent[pixel + maxp].refcnt == 0) - { - GetNextBitsOrBreak(maxp, mask, base); - } - if ((maxp < mask) || (ent[pixel + mask].refcnt != 0)) - continue; - /* this one works */ - *ppix++ = pixel; - found++; - if (found < count) - continue; - /* found enough, allocate them all */ - while (--count >= 0) - { - pixel = (pixels)[count]; - maxp = 0; - while (1) - { - ent[pixel + maxp].refcnt = AllocPrivate; - ent[pixel + maxp].fShared = FALSE; - GetNextBitsOrBreak(maxp, mask, base); - *ppix++ = pixel + maxp; - } - } - - *pMask = mask; - return (TRUE); - } - } - return (FALSE); -} - -/** - * - * \param ppixFirst First of the client's new pixels - */ -static Bool -AllocShared (ColormapPtr pmap, Pixel *ppix, int c, int r, int g, int b, - Pixel rmask, Pixel gmask, Pixel bmask, Pixel *ppixFirst) -{ - Pixel *pptr, *cptr; - int npix, z, npixClientNew, npixShared; - Pixel basemask, base, bits, common; - SHAREDCOLOR *pshared, **ppshared, **psharedList; - - npixClientNew = c << (r + g + b); - npixShared = (c << r) + (c << g) + (c << b); - psharedList = xalloc(npixShared * sizeof(SHAREDCOLOR *)); - if (!psharedList) - return FALSE; - ppshared = psharedList; - for (z = npixShared; --z >= 0; ) - { - if (!(ppshared[z] = xalloc(sizeof(SHAREDCOLOR)))) - { - for (z++ ; z < npixShared; z++) - xfree(ppshared[z]); - return FALSE; - } - } - for(pptr = ppix, npix = c; --npix >= 0; pptr++) - { - basemask = ~(gmask | bmask); - common = *pptr & basemask; - if (rmask) - { - bits = 0; - base = lowbit (rmask); - while(1) - { - pshared = *ppshared++; - pshared->refcnt = 1 << (g + b); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == (common | bits)) - { - pmap->red[*cptr].fShared = TRUE; - pmap->red[*cptr].co.shco.red = pshared; - } - } - GetNextBitsOrBreak(bits, rmask, base); - } - } - else - { - pshared = *ppshared++; - pshared->refcnt = 1 << (g + b); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == common) - { - pmap->red[*cptr].fShared = TRUE; - pmap->red[*cptr].co.shco.red = pshared; - } - } - } - basemask = ~(rmask | bmask); - common = *pptr & basemask; - if (gmask) - { - bits = 0; - base = lowbit (gmask); - while(1) - { - pshared = *ppshared++; - pshared->refcnt = 1 << (r + b); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == (common | bits)) - { - pmap->red[*cptr].co.shco.green = pshared; - } - } - GetNextBitsOrBreak(bits, gmask, base); - } - } - else - { - pshared = *ppshared++; - pshared->refcnt = 1 << (g + b); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == common) - { - pmap->red[*cptr].co.shco.green = pshared; - } - } - } - basemask = ~(rmask | gmask); - common = *pptr & basemask; - if (bmask) - { - bits = 0; - base = lowbit (bmask); - while(1) - { - pshared = *ppshared++; - pshared->refcnt = 1 << (r + g); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == (common | bits)) - { - pmap->red[*cptr].co.shco.blue = pshared; - } - } - GetNextBitsOrBreak(bits, bmask, base); - } - } - else - { - pshared = *ppshared++; - pshared->refcnt = 1 << (g + b); - for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++) - { - if ((*cptr & basemask) == common) - { - pmap->red[*cptr].co.shco.blue = pshared; - } - } - } - } - xfree(psharedList); - return TRUE; -} - - -/** FreeColors - * Free colors and/or cells (probably slow for large numbers) - */ -int -FreeColors (ColormapPtr pmap, int client, int count, Pixel *pixels, Pixel mask) -{ - int rval, result, class; - Pixel rmask; - - class = pmap->class; - if (pmap->flags & AllAllocated) - return(BadAccess); - if ((class | DynamicClass) == DirectColor) - { - rmask = mask & RGBMASK(pmap->pVisual); - result = FreeCo(pmap, client, REDMAP, count, pixels, - mask & pmap->pVisual->redMask); - /* If any of the three calls fails, we must report that, if more - * than one fails, it's ok that we report the last one */ - rval = FreeCo(pmap, client, GREENMAP, count, pixels, - mask & pmap->pVisual->greenMask); - if(rval != Success) - result = rval; - rval = FreeCo(pmap, client, BLUEMAP, count, pixels, - mask & pmap->pVisual->blueMask); - if(rval != Success) - result = rval; - } - else - { - rmask = mask & ((((Pixel)1) << pmap->pVisual->nplanes) - 1); - result = FreeCo(pmap, client, PSEUDOMAP, count, pixels, rmask); - } - if ((mask != rmask) && count) - { - clientErrorValue = *pixels | mask; - result = BadValue; - } - /* XXX should worry about removing any RT_CMAPENTRY resource */ - return (result); -} - -/** - * Helper for FreeColors -- frees all combinations of *newpixels and mask bits - * which the client has allocated in channel colormap cells of pmap. - * doesn't change newpixels if it doesn't need to - * - * \param pmap which colormap head - * \param color which sub-map, eg, RED, BLUE, PSEUDO - * \param npixIn number of pixels passed in - * \param ppixIn number of base pixels - * \param mask mask client gave us - */ -static int -FreeCo (ColormapPtr pmap, int client, int color, int npixIn, Pixel *ppixIn, Pixel mask) -{ - Pixel *ppixClient, pixTest; - int npixClient, npixNew, npix; - Pixel bits, base, cmask, rgbbad; - Pixel *pptr, *cptr; - int n, zapped; - int errVal = Success; - int offset, numents; - - if (npixIn == 0) - return (errVal); - bits = 0; - zapped = 0; - base = lowbit (mask); - - switch(color) - { - case REDMAP: - cmask = pmap->pVisual->redMask; - rgbbad = ~RGBMASK(pmap->pVisual); - offset = pmap->pVisual->offsetRed; - numents = (cmask >> offset) + 1; - ppixClient = pmap->clientPixelsRed[client]; - npixClient = pmap->numPixelsRed[client]; - break; - case GREENMAP: - cmask = pmap->pVisual->greenMask; - rgbbad = ~RGBMASK(pmap->pVisual); - offset = pmap->pVisual->offsetGreen; - numents = (cmask >> offset) + 1; - ppixClient = pmap->clientPixelsGreen[client]; - npixClient = pmap->numPixelsGreen[client]; - break; - case BLUEMAP: - cmask = pmap->pVisual->blueMask; - rgbbad = ~RGBMASK(pmap->pVisual); - offset = pmap->pVisual->offsetBlue; - numents = (cmask >> offset) + 1; - ppixClient = pmap->clientPixelsBlue[client]; - npixClient = pmap->numPixelsBlue[client]; - break; - default: /* so compiler can see that everything gets initialized */ - case PSEUDOMAP: - cmask = ~((Pixel)0); - rgbbad = 0; - offset = 0; - numents = pmap->pVisual->ColormapEntries; - ppixClient = pmap->clientPixelsRed[client]; - npixClient = pmap->numPixelsRed[client]; - break; - } - - - /* zap all pixels which match */ - while (1) - { - /* go through pixel list */ - for (pptr = ppixIn, n = npixIn; --n >= 0; pptr++) - { - pixTest = ((*pptr | bits) & cmask) >> offset; - if ((pixTest >= numents) || (*pptr & rgbbad)) - { - clientErrorValue = *pptr | bits; - errVal = BadValue; - continue; - } - - /* find match in client list */ - for (cptr = ppixClient, npix = npixClient; - --npix >= 0 && *cptr != pixTest; - cptr++) ; - - if (npix >= 0) - { - if (pmap->class & DynamicClass) - { - FreeCell(pmap, pixTest, color); - } - *cptr = ~((Pixel)0); - zapped++; - } - else - errVal = BadAccess; - } - /* generate next bits value */ - GetNextBitsOrBreak(bits, mask, base); - } - - /* delete freed pixels from client pixel list */ - if (zapped) - { - npixNew = npixClient - zapped; - if (npixNew) - { - /* Since the list can only get smaller, we can do a copy in - * place and then realloc to a smaller size */ - pptr = cptr = ppixClient; - - /* If we have all the new pixels, we don't have to examine the - * rest of the old ones */ - for(npix = 0; npix < npixNew; cptr++) - { - if (*cptr != ~((Pixel)0)) - { - *pptr++ = *cptr; - npix++; - } - } - pptr = (Pixel *)xrealloc(ppixClient, npixNew * sizeof(Pixel)); - if (pptr) - ppixClient = pptr; - npixClient = npixNew; - } - else - { - npixClient = 0; - xfree(ppixClient); - ppixClient = (Pixel *)NULL; - } - switch(color) - { - case PSEUDOMAP: - case REDMAP: - pmap->clientPixelsRed[client] = ppixClient; - pmap->numPixelsRed[client] = npixClient; - break; - case GREENMAP: - pmap->clientPixelsGreen[client] = ppixClient; - pmap->numPixelsGreen[client] = npixClient; - break; - case BLUEMAP: - pmap->clientPixelsBlue[client] = ppixClient; - pmap->numPixelsBlue[client] = npixClient; - break; - } - } - return (errVal); -} - - - -/* Redefine color values */ -int -StoreColors (ColormapPtr pmap, int count, xColorItem *defs) -{ - Pixel pix; - xColorItem *pdef; - EntryPtr pent, pentT, pentLast; - VisualPtr pVisual; - SHAREDCOLOR *pred, *pgreen, *pblue; - int n, ChgRed, ChgGreen, ChgBlue, idef; - int class, errVal = Success; - int ok; - - - class = pmap->class; - if(!(class & DynamicClass) && !(pmap->flags & BeingCreated)) - { - return(BadAccess); - } - pVisual = pmap->pVisual; - - idef = 0; - if((class | DynamicClass) == DirectColor) - { - int numred, numgreen, numblue; - Pixel rgbbad; - - numred = NUMRED(pVisual); - numgreen = NUMGREEN(pVisual); - numblue = NUMBLUE(pVisual); - rgbbad = ~RGBMASK(pVisual); - for (pdef = defs, n = 0; n < count; pdef++, n++) - { - ok = TRUE; - (*pmap->pScreen->ResolveColor) - (&pdef->red, &pdef->green, &pdef->blue, pmap->pVisual); - - if (pdef->pixel & rgbbad) - { - errVal = BadValue; - clientErrorValue = pdef->pixel; - continue; - } - pix = (pdef->pixel & pVisual->redMask) >> pVisual->offsetRed; - if (pix >= numred) - { - errVal = BadValue; - ok = FALSE; - } - else if (pmap->red[pix].refcnt != AllocPrivate) - { - errVal = BadAccess; - ok = FALSE; - } - else if (pdef->flags & DoRed) - { - pmap->red[pix].co.local.red = pdef->red; - } - else - { - pdef->red = pmap->red[pix].co.local.red; - } - - pix = (pdef->pixel & pVisual->greenMask) >> pVisual->offsetGreen; - if (pix >= numgreen) - { - errVal = BadValue; - ok = FALSE; - } - else if (pmap->green[pix].refcnt != AllocPrivate) - { - errVal = BadAccess; - ok = FALSE; - } - else if (pdef->flags & DoGreen) - { - pmap->green[pix].co.local.green = pdef->green; - } - else - { - pdef->green = pmap->green[pix].co.local.green; - } - - pix = (pdef->pixel & pVisual->blueMask) >> pVisual->offsetBlue; - if (pix >= numblue) - { - errVal = BadValue; - ok = FALSE; - } - else if (pmap->blue[pix].refcnt != AllocPrivate) - { - errVal = BadAccess; - ok = FALSE; - } - else if (pdef->flags & DoBlue) - { - pmap->blue[pix].co.local.blue = pdef->blue; - } - else - { - pdef->blue = pmap->blue[pix].co.local.blue; - } - /* If this is an o.k. entry, then it gets added to the list - * to be sent to the hardware. If not, skip it. Once we've - * skipped one, we have to copy all the others. - */ - if(ok) - { - if(idef != n) - defs[idef] = defs[n]; - idef++; - } else - clientErrorValue = pdef->pixel; - } - } - else - { - for (pdef = defs, n = 0; n < count; pdef++, n++) - { - - ok = TRUE; - if (pdef->pixel >= pVisual->ColormapEntries) - { - clientErrorValue = pdef->pixel; - errVal = BadValue; - ok = FALSE; - } - else if (pmap->red[pdef->pixel].refcnt != AllocPrivate) - { - errVal = BadAccess; - ok = FALSE; - } - - /* If this is an o.k. entry, then it gets added to the list - * to be sent to the hardware. If not, skip it. Once we've - * skipped one, we have to copy all the others. - */ - if(ok) - { - if(idef != n) - defs[idef] = defs[n]; - idef++; - } - else - continue; - - (*pmap->pScreen->ResolveColor) - (&pdef->red, &pdef->green, &pdef->blue, pmap->pVisual); - - pent = &pmap->red[pdef->pixel]; - - if(pdef->flags & DoRed) - { - if(pent->fShared) - { - pent->co.shco.red->color = pdef->red; - if (pent->co.shco.red->refcnt > 1) - ok = FALSE; - } - else - pent->co.local.red = pdef->red; - } - else - { - if(pent->fShared) - pdef->red = pent->co.shco.red->color; - else - pdef->red = pent->co.local.red; - } - if(pdef->flags & DoGreen) - { - if(pent->fShared) - { - pent->co.shco.green->color = pdef->green; - if (pent->co.shco.green->refcnt > 1) - ok = FALSE; - } - else - pent->co.local.green = pdef->green; - } - else - { - if(pent->fShared) - pdef->green = pent->co.shco.green->color; - else - pdef->green = pent->co.local.green; - } - if(pdef->flags & DoBlue) - { - if(pent->fShared) - { - pent->co.shco.blue->color = pdef->blue; - if (pent->co.shco.blue->refcnt > 1) - ok = FALSE; - } - else - pent->co.local.blue = pdef->blue; - } - else - { - if(pent->fShared) - pdef->blue = pent->co.shco.blue->color; - else - pdef->blue = pent->co.local.blue; - } - - if(!ok) - { - /* have to run through the colormap and change anybody who - * shares this value */ - pred = pent->co.shco.red; - pgreen = pent->co.shco.green; - pblue = pent->co.shco.blue; - ChgRed = pdef->flags & DoRed; - ChgGreen = pdef->flags & DoGreen; - ChgBlue = pdef->flags & DoBlue; - pentLast = pmap->red + pVisual->ColormapEntries; - - for(pentT = pmap->red; pentT < pentLast; pentT++) - { - if(pentT->fShared && (pentT != pent)) - { - xColorItem defChg; - - /* There are, alas, devices in this world too dumb - * to read their own hardware colormaps. Sick, but - * true. So we're going to be really nice and load - * the xColorItem with the proper value for all the - * fields. We will only set the flags for those - * fields that actually change. Smart devices can - * arrange to change only those fields. Dumb devices - * can rest assured that we have provided for them, - * and can change all three fields */ - - defChg.flags = 0; - if(ChgRed && pentT->co.shco.red == pred) - { - defChg.flags |= DoRed; - } - if(ChgGreen && pentT->co.shco.green == pgreen) - { - defChg.flags |= DoGreen; - } - if(ChgBlue && pentT->co.shco.blue == pblue) - { - defChg.flags |= DoBlue; - } - if(defChg.flags != 0) - { - defChg.pixel = pentT - pmap->red; - defChg.red = pentT->co.shco.red->color; - defChg.green = pentT->co.shco.green->color; - defChg.blue = pentT->co.shco.blue->color; - (*pmap->pScreen->StoreColors) (pmap, 1, &defChg); - } - } - } - - } - } - } - /* Note that we use idef, the count of acceptable entries, and not - * count, the count of proposed entries */ - if (idef != 0) - ( *pmap->pScreen->StoreColors) (pmap, idef, defs); - return (errVal); -} - -int -IsMapInstalled(Colormap map, WindowPtr pWin) -{ - Colormap *pmaps; - int imap, nummaps, found; - - pmaps = xalloc(pWin->drawable.pScreen->maxInstalledCmaps*sizeof(Colormap)); - if(!pmaps) - return(FALSE); - nummaps = (*pWin->drawable.pScreen->ListInstalledColormaps) - (pWin->drawable.pScreen, pmaps); - found = FALSE; - for(imap = 0; imap < nummaps; imap++) - { - if(pmaps[imap] == map) - { - found = TRUE; - break; - } - } - xfree(pmaps); - return (found); -} +/***********************************************************
+
+Copyright 1987, 1998 The Open Group
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included in
+all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN
+AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of The Open Group shall not be
+used in advertising or otherwise to promote the sale, use or other dealings
+in this Software without prior written authorization from The Open Group.
+
+
+Copyright 1987 by Digital Equipment Corporation, Maynard, Massachusetts.
+
+ All Rights Reserved
+
+Permission to use, copy, modify, and distribute this software and its
+documentation for any purpose and without fee is hereby granted,
+provided that the above copyright notice appear in all copies and that
+both that copyright notice and this permission notice appear in
+supporting documentation, and that the name of Digital not be
+used in advertising or publicity pertaining to distribution of the
+software without specific, written prior permission.
+
+DIGITAL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
+ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL
+DIGITAL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR
+ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
+WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION,
+ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS
+SOFTWARE.
+
+******************************************************************/
+
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#endif
+
+#include <X11/X.h>
+#include <X11/Xproto.h>
+#include <stdio.h>
+#include <string.h>
+#include <strings.h>
+#include "misc.h"
+#include "dix.h"
+#include "colormapst.h"
+#include "os.h"
+#include "scrnintstr.h"
+#include "resource.h"
+#include "windowstr.h"
+#include "privates.h"
+#include "xace.h"
+
+#ifdef _MSC_VER
+#define UpdateColors thisUpdateColors
+#endif
+
+extern XID clientErrorValue;
+
+static Pixel FindBestPixel(
+ EntryPtr /*pentFirst*/,
+ int /*size*/,
+ xrgb * /*prgb*/,
+ int /*channel*/
+);
+
+static int AllComp(
+ EntryPtr /*pent*/,
+ xrgb * /*prgb*/
+);
+
+static int RedComp(
+ EntryPtr /*pent*/,
+ xrgb * /*prgb*/
+);
+
+static int GreenComp(
+ EntryPtr /*pent*/,
+ xrgb * /*prgb*/
+);
+
+static int BlueComp(
+ EntryPtr /*pent*/,
+ xrgb * /*prgb*/
+);
+
+static void FreePixels(
+ ColormapPtr /*pmap*/,
+ int /*client*/
+);
+
+static void CopyFree(
+ int /*channel*/,
+ int /*client*/,
+ ColormapPtr /*pmapSrc*/,
+ ColormapPtr /*pmapDst*/
+);
+
+static void FreeCell(
+ ColormapPtr /*pmap*/,
+ Pixel /*i*/,
+ int /*channel*/
+);
+
+static void UpdateColors(
+ ColormapPtr /*pmap*/
+);
+
+static int AllocDirect(
+ int /*client*/,
+ ColormapPtr /*pmap*/,
+ int /*c*/,
+ int /*r*/,
+ int /*g*/,
+ int /*b*/,
+ Bool /*contig*/,
+ Pixel * /*pixels*/,
+ Pixel * /*prmask*/,
+ Pixel * /*pgmask*/,
+ Pixel * /*pbmask*/
+);
+
+static int AllocPseudo(
+ int /*client*/,
+ ColormapPtr /*pmap*/,
+ int /*c*/,
+ int /*r*/,
+ Bool /*contig*/,
+ Pixel * /*pixels*/,
+ Pixel * /*pmask*/,
+ Pixel ** /*pppixFirst*/
+);
+
+static Bool AllocCP(
+ ColormapPtr /*pmap*/,
+ EntryPtr /*pentFirst*/,
+ int /*count*/,
+ int /*planes*/,
+ Bool /*contig*/,
+ Pixel * /*pixels*/,
+ Pixel * /*pMask*/
+);
+
+static Bool AllocShared(
+ ColormapPtr /*pmap*/,
+ Pixel * /*ppix*/,
+ int /*c*/,
+ int /*r*/,
+ int /*g*/,
+ int /*b*/,
+ Pixel /*rmask*/,
+ Pixel /*gmask*/,
+ Pixel /*bmask*/,
+ Pixel * /*ppixFirst*/
+);
+
+static int FreeCo(
+ ColormapPtr /*pmap*/,
+ int /*client*/,
+ int /*color*/,
+ int /*npixIn*/,
+ Pixel * /*ppixIn*/,
+ Pixel /*mask*/
+);
+
+static int TellNoMap(
+ WindowPtr /*pwin*/,
+ Colormap * /*pmid*/
+);
+
+static void FindColorInRootCmap (
+ ColormapPtr /* pmap */,
+ EntryPtr /* pentFirst */,
+ int /* size */,
+ xrgb* /* prgb */,
+ Pixel* /* pPixel */,
+ int /* channel */,
+ ColorCompareProcPtr /* comp */
+);
+
+#define NUMRED(vis) ((vis->redMask >> vis->offsetRed) + 1)
+#define NUMGREEN(vis) ((vis->greenMask >> vis->offsetGreen) + 1)
+#define NUMBLUE(vis) ((vis->blueMask >> vis->offsetBlue) + 1)
+#if COMPOSITE
+#define ALPHAMASK(vis) ((vis)->nplanes < 32 ? 0 : \
+ (CARD32) ~((vis)->redMask|(vis)->greenMask|(vis)->blueMask))
+#else
+#define ALPHAMASK(vis) 0
+#endif
+
+#define RGBMASK(vis) (vis->redMask | vis->greenMask | vis->blueMask | ALPHAMASK(vis))
+
+/* GetNextBitsOrBreak(bits, mask, base) --
+ * (Suggestion: First read the macro, then read this explanation.
+ *
+ * Either generate the next value to OR in to a pixel or break out of this
+ * while loop
+ *
+ * This macro is used when we're trying to generate all 2^n combinations of
+ * bits in mask. What we're doing here is counting in binary, except that
+ * the bits we use to count may not be contiguous. This macro will be
+ * called 2^n times, returning a different value in bits each time. Then
+ * it will cause us to break out of a surrounding loop. (It will always be
+ * called from within a while loop.)
+ * On call: mask is the value we want to find all the combinations for
+ * base has 1 bit set where the least significant bit of mask is set
+ *
+ * For example,if mask is 01010, base should be 0010 and we count like this:
+ * 00010 (see this isn't so hard),
+ * then we add base to bits and get 0100. (bits & ~mask) is (0100 & 0100) so
+ * we add that to bits getting (0100 + 0100) =
+ * 01000 for our next value.
+ * then we add 0010 to get
+ * 01010 and we're done (easy as 1, 2, 3)
+ */
+#define GetNextBitsOrBreak(bits, mask, base) \
+ if((bits) == (mask)) \
+ break; \
+ (bits) += (base); \
+ while((bits) & ~(mask)) \
+ (bits) += ((bits) & ~(mask));
+/* ID of server as client */
+#define SERVER_ID 0
+
+typedef struct _colorResource
+{
+ Colormap mid;
+ int client;
+} colorResource;
+
+/* Invariants:
+ * refcnt == 0 means entry is empty
+ * refcnt > 0 means entry is useable by many clients, so it can't be changed
+ * refcnt == AllocPrivate means entry owned by one client only
+ * fShared should only be set if refcnt == AllocPrivate, and only in red map
+ */
+
+
+/**
+ * Create and initialize the color map
+ *
+ * \param mid resource to use for this colormap
+ * \param alloc 1 iff all entries are allocated writable
+ */
+int
+CreateColormap (Colormap mid, ScreenPtr pScreen, VisualPtr pVisual,
+ ColormapPtr *ppcmap, int alloc, int client)
+{
+ int class, size;
+ unsigned long sizebytes;
+ ColormapPtr pmap;
+ EntryPtr pent;
+ int i;
+ Pixel *ppix, **pptr;
+
+ class = pVisual->class;
+ if(!(class & DynamicClass) && (alloc != AllocNone) && (client != SERVER_ID))
+ return (BadMatch);
+
+ size = pVisual->ColormapEntries;
+ sizebytes = (size * sizeof(Entry)) +
+ (MAXCLIENTS * sizeof(Pixel *)) +
+ (MAXCLIENTS * sizeof(int));
+ if ((class | DynamicClass) == DirectColor)
+ sizebytes *= 3;
+ sizebytes += sizeof(ColormapRec);
+ pmap = xalloc(sizebytes);
+ if (!pmap)
+ return (BadAlloc);
+#if defined(_XSERVER64)
+ pmap->pad0 = 0;
+ pmap->pad1 = 0;
+#if (X_BYTE_ORDER == X_LITTLE_ENDIAN)
+ pmap->pad2 = 0;
+#endif
+#endif
+ pmap->red = (EntryPtr)((char *)pmap + sizeof(ColormapRec));
+ sizebytes = size * sizeof(Entry);
+ pmap->clientPixelsRed = (Pixel **)((char *)pmap->red + sizebytes);
+ pmap->numPixelsRed = (int *)((char *)pmap->clientPixelsRed +
+ (MAXCLIENTS * sizeof(Pixel *)));
+ pmap->mid = mid;
+ pmap->flags = 0; /* start out with all flags clear */
+ if(mid == pScreen->defColormap)
+ pmap->flags |= IsDefault;
+ pmap->pScreen = pScreen;
+ pmap->pVisual = pVisual;
+ pmap->class = class;
+ if ((class | DynamicClass) == DirectColor)
+ size = NUMRED(pVisual);
+ pmap->freeRed = size;
+ bzero ((char *) pmap->red, (int)sizebytes);
+ bzero((char *) pmap->numPixelsRed, MAXCLIENTS * sizeof(int));
+ for (pptr = &pmap->clientPixelsRed[MAXCLIENTS]; --pptr >= pmap->clientPixelsRed; )
+ *pptr = (Pixel *)NULL;
+ if (alloc == AllocAll)
+ {
+ if (class & DynamicClass)
+ pmap->flags |= AllAllocated;
+ for (pent = &pmap->red[size - 1]; pent >= pmap->red; pent--)
+ pent->refcnt = AllocPrivate;
+ pmap->freeRed = 0;
+ ppix = xalloc(size * sizeof(Pixel));
+ if (!ppix)
+ {
+ xfree(pmap);
+ return (BadAlloc);
+ }
+ pmap->clientPixelsRed[client] = ppix;
+ for(i = 0; i < size; i++)
+ ppix[i] = i;
+ pmap->numPixelsRed[client] = size;
+ }
+
+ if ((class | DynamicClass) == DirectColor)
+ {
+ pmap->freeGreen = NUMGREEN(pVisual);
+ pmap->green = (EntryPtr)((char *)pmap->numPixelsRed +
+ (MAXCLIENTS * sizeof(int)));
+ pmap->clientPixelsGreen = (Pixel **)((char *)pmap->green + sizebytes);
+ pmap->numPixelsGreen = (int *)((char *)pmap->clientPixelsGreen +
+ (MAXCLIENTS * sizeof(Pixel *)));
+ pmap->freeBlue = NUMBLUE(pVisual);
+ pmap->blue = (EntryPtr)((char *)pmap->numPixelsGreen +
+ (MAXCLIENTS * sizeof(int)));
+ pmap->clientPixelsBlue = (Pixel **)((char *)pmap->blue + sizebytes);
+ pmap->numPixelsBlue = (int *)((char *)pmap->clientPixelsBlue +
+ (MAXCLIENTS * sizeof(Pixel *)));
+
+ bzero ((char *) pmap->green, (int)sizebytes);
+ bzero ((char *) pmap->blue, (int)sizebytes);
+
+ memmove((char *) pmap->clientPixelsGreen,
+ (char *) pmap->clientPixelsRed,
+ MAXCLIENTS * sizeof(Pixel *));
+ memmove((char *) pmap->clientPixelsBlue,
+ (char *) pmap->clientPixelsRed,
+ MAXCLIENTS * sizeof(Pixel *));
+ bzero((char *) pmap->numPixelsGreen, MAXCLIENTS * sizeof(int));
+ bzero((char *) pmap->numPixelsBlue, MAXCLIENTS * sizeof(int));
+
+ /* If every cell is allocated, mark its refcnt */
+ if (alloc == AllocAll)
+ {
+ size = pmap->freeGreen;
+ for(pent = &pmap->green[size-1]; pent >= pmap->green; pent--)
+ pent->refcnt = AllocPrivate;
+ pmap->freeGreen = 0;
+ ppix = xalloc(size * sizeof(Pixel));
+ if (!ppix)
+ {
+ xfree(pmap->clientPixelsRed[client]);
+ xfree(pmap);
+ return(BadAlloc);
+ }
+ pmap->clientPixelsGreen[client] = ppix;
+ for(i = 0; i < size; i++)
+ ppix[i] = i;
+ pmap->numPixelsGreen[client] = size;
+
+ size = pmap->freeBlue;
+ for(pent = &pmap->blue[size-1]; pent >= pmap->blue; pent--)
+ pent->refcnt = AllocPrivate;
+ pmap->freeBlue = 0;
+ ppix = xalloc(size * sizeof(Pixel));
+ if (!ppix)
+ {
+ xfree(pmap->clientPixelsGreen[client]);
+ xfree(pmap->clientPixelsRed[client]);
+ xfree(pmap);
+ return(BadAlloc);
+ }
+ pmap->clientPixelsBlue[client] = ppix;
+ for(i = 0; i < size; i++)
+ ppix[i] = i;
+ pmap->numPixelsBlue[client] = size;
+ }
+ }
+ pmap->devPrivates = NULL;
+ pmap->flags |= BeingCreated;
+
+ if (!AddResource(mid, RT_COLORMAP, (pointer)pmap))
+ return (BadAlloc);
+
+ /*
+ * Security creation/labeling check
+ */
+ i = XaceHook(XACE_RESOURCE_ACCESS, clients[client], mid, RT_COLORMAP,
+ pmap, RT_NONE, NULL, DixCreateAccess);
+ if (i != Success) {
+ FreeResource(mid, RT_NONE);
+ return i;
+ }
+
+ /* If the device wants a chance to initialize the colormap in any way,
+ * this is it. In specific, if this is a Static colormap, this is the
+ * time to fill in the colormap's values */
+ if (!(*pScreen->CreateColormap)(pmap))
+ {
+ FreeResource (mid, RT_NONE);
+ return BadAlloc;
+ }
+ pmap->flags &= ~BeingCreated;
+ *ppcmap = pmap;
+ return (Success);
+}
+
+/**
+ *
+ * \param value must conform to DeleteType
+ */
+int
+FreeColormap (pointer value, XID mid)
+{
+ int i;
+ EntryPtr pent;
+ ColormapPtr pmap = (ColormapPtr)value;
+
+ if(CLIENT_ID(mid) != SERVER_ID)
+ {
+ (*pmap->pScreen->UninstallColormap) (pmap);
+ WalkTree(pmap->pScreen, (VisitWindowProcPtr)TellNoMap, (pointer) &mid);
+ }
+
+ /* This is the device's chance to undo anything it needs to, especially
+ * to free any storage it allocated */
+ (*pmap->pScreen->DestroyColormap)(pmap);
+
+ if(pmap->clientPixelsRed)
+ {
+ for(i = 0; i < MAXCLIENTS; i++)
+ xfree(pmap->clientPixelsRed[i]);
+ }
+
+ if ((pmap->class == PseudoColor) || (pmap->class == GrayScale))
+ {
+ for(pent = &pmap->red[pmap->pVisual->ColormapEntries - 1];
+ pent >= pmap->red;
+ pent--)
+ {
+ if(pent->fShared)
+ {
+ if (--pent->co.shco.red->refcnt == 0)
+ xfree(pent->co.shco.red);
+ if (--pent->co.shco.green->refcnt == 0)
+ xfree(pent->co.shco.green);
+ if (--pent->co.shco.blue->refcnt == 0)
+ xfree(pent->co.shco.blue);
+ }
+ }
+ }
+ if((pmap->class | DynamicClass) == DirectColor)
+ {
+ for(i = 0; i < MAXCLIENTS; i++)
+ {
+ xfree(pmap->clientPixelsGreen[i]);
+ xfree(pmap->clientPixelsBlue[i]);
+ }
+ }
+
+ dixFreePrivates(pmap->devPrivates);
+ xfree(pmap);
+ return(Success);
+}
+
+/* Tell window that pmid has disappeared */
+static int
+TellNoMap (WindowPtr pwin, Colormap *pmid)
+{
+ xEvent xE;
+
+ if (wColormap(pwin) == *pmid)
+ {
+ /* This should be call to DeliverEvent */
+ xE.u.u.type = ColormapNotify;
+ xE.u.colormap.window = pwin->drawable.id;
+ xE.u.colormap.colormap = None;
+ xE.u.colormap.new = TRUE;
+ xE.u.colormap.state = ColormapUninstalled;
+#ifdef PANORAMIX
+ if(noPanoramiXExtension || !pwin->drawable.pScreen->myNum)
+#endif
+ DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL);
+ if (pwin->optional) {
+ pwin->optional->colormap = None;
+ CheckWindowOptionalNeed (pwin);
+ }
+ }
+
+ return (WT_WALKCHILDREN);
+}
+
+/* Tell window that pmid got uninstalled */
+int
+TellLostMap (WindowPtr pwin, pointer value)
+{
+ Colormap *pmid = (Colormap *)value;
+ xEvent xE;
+
+#ifdef PANORAMIX
+ if(!noPanoramiXExtension && pwin->drawable.pScreen->myNum)
+ return WT_STOPWALKING;
+#endif
+ if (wColormap(pwin) == *pmid)
+ {
+ /* This should be call to DeliverEvent */
+ xE.u.u.type = ColormapNotify;
+ xE.u.colormap.window = pwin->drawable.id;
+ xE.u.colormap.colormap = *pmid;
+ xE.u.colormap.new = FALSE;
+ xE.u.colormap.state = ColormapUninstalled;
+ DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL);
+ }
+
+ return (WT_WALKCHILDREN);
+}
+
+/* Tell window that pmid got installed */
+int
+TellGainedMap (WindowPtr pwin, pointer value)
+{
+ Colormap *pmid = (Colormap *)value;
+ xEvent xE;
+
+#ifdef PANORAMIX
+ if(!noPanoramiXExtension && pwin->drawable.pScreen->myNum)
+ return WT_STOPWALKING;
+#endif
+ if (wColormap (pwin) == *pmid)
+ {
+ /* This should be call to DeliverEvent */
+ xE.u.u.type = ColormapNotify;
+ xE.u.colormap.window = pwin->drawable.id;
+ xE.u.colormap.colormap = *pmid;
+ xE.u.colormap.new = FALSE;
+ xE.u.colormap.state = ColormapInstalled;
+ DeliverEvents(pwin, &xE, 1, (WindowPtr)NULL);
+ }
+
+ return (WT_WALKCHILDREN);
+}
+
+
+int
+CopyColormapAndFree (Colormap mid, ColormapPtr pSrc, int client)
+{
+ ColormapPtr pmap = (ColormapPtr) NULL;
+ int result, alloc, size;
+ Colormap midSrc;
+ ScreenPtr pScreen;
+ VisualPtr pVisual;
+
+ pScreen = pSrc->pScreen;
+ pVisual = pSrc->pVisual;
+ midSrc = pSrc->mid;
+ alloc = ((pSrc->flags & AllAllocated) && CLIENT_ID(midSrc) == client) ?
+ AllocAll : AllocNone;
+ size = pVisual->ColormapEntries;
+
+ /* If the create returns non-0, it failed */
+ result = CreateColormap (mid, pScreen, pVisual, &pmap, alloc, client);
+ if(result != Success)
+ return(result);
+ if(alloc == AllocAll)
+ {
+ memmove((char *)pmap->red, (char *)pSrc->red, size * sizeof(Entry));
+ if((pmap->class | DynamicClass) == DirectColor)
+ {
+ memmove((char *)pmap->green, (char *)pSrc->green, size * sizeof(Entry));
+ memmove((char *)pmap->blue, (char *)pSrc->blue, size * sizeof(Entry));
+ }
+ pSrc->flags &= ~AllAllocated;
+ FreePixels(pSrc, client);
+ UpdateColors(pmap);
+ return(Success);
+ }
+
+ CopyFree(REDMAP, client, pSrc, pmap);
+ if ((pmap->class | DynamicClass) == DirectColor)
+ {
+ CopyFree(GREENMAP, client, pSrc, pmap);
+ CopyFree(BLUEMAP, client, pSrc, pmap);
+ }
+ if (pmap->class & DynamicClass)
+ UpdateColors(pmap);
+ /* XXX should worry about removing any RT_CMAPENTRY resource */
+ return(Success);
+}
+
+/* Helper routine for freeing large numbers of cells from a map */
+static void
+CopyFree (int channel, int client, ColormapPtr pmapSrc, ColormapPtr pmapDst)
+{
+ int z, npix;
+ EntryPtr pentSrcFirst, pentDstFirst;
+ EntryPtr pentSrc, pentDst;
+ Pixel *ppix;
+ int nalloc;
+
+ switch(channel)
+ {
+ default: /* so compiler can see that everything gets initialized */
+ case REDMAP:
+ ppix = (pmapSrc->clientPixelsRed)[client];
+ npix = (pmapSrc->numPixelsRed)[client];
+ pentSrcFirst = pmapSrc->red;
+ pentDstFirst = pmapDst->red;
+ break;
+ case GREENMAP:
+ ppix = (pmapSrc->clientPixelsGreen)[client];
+ npix = (pmapSrc->numPixelsGreen)[client];
+ pentSrcFirst = pmapSrc->green;
+ pentDstFirst = pmapDst->green;
+ break;
+ case BLUEMAP:
+ ppix = (pmapSrc->clientPixelsBlue)[client];
+ npix = (pmapSrc->numPixelsBlue)[client];
+ pentSrcFirst = pmapSrc->blue;
+ pentDstFirst = pmapDst->blue;
+ break;
+ }
+ nalloc = 0;
+ if (pmapSrc->class & DynamicClass)
+ {
+ for(z = npix; --z >= 0; ppix++)
+ {
+ /* Copy entries */
+ pentSrc = pentSrcFirst + *ppix;
+ pentDst = pentDstFirst + *ppix;
+ if (pentDst->refcnt > 0)
+ {
+ pentDst->refcnt++;
+ }
+ else
+ {
+ *pentDst = *pentSrc;
+ nalloc++;
+ if (pentSrc->refcnt > 0)
+ pentDst->refcnt = 1;
+ else
+ pentSrc->fShared = FALSE;
+ }
+ FreeCell(pmapSrc, *ppix, channel);
+ }
+ }
+
+ /* Note that FreeCell has already fixed pmapSrc->free{Color} */
+ switch(channel)
+ {
+ case REDMAP:
+ pmapDst->freeRed -= nalloc;
+ (pmapDst->clientPixelsRed)[client] =
+ (pmapSrc->clientPixelsRed)[client];
+ (pmapSrc->clientPixelsRed)[client] = (Pixel *) NULL;
+ (pmapDst->numPixelsRed)[client] = (pmapSrc->numPixelsRed)[client];
+ (pmapSrc->numPixelsRed)[client] = 0;
+ break;
+ case GREENMAP:
+ pmapDst->freeGreen -= nalloc;
+ (pmapDst->clientPixelsGreen)[client] =
+ (pmapSrc->clientPixelsGreen)[client];
+ (pmapSrc->clientPixelsGreen)[client] = (Pixel *) NULL;
+ (pmapDst->numPixelsGreen)[client] = (pmapSrc->numPixelsGreen)[client];
+ (pmapSrc->numPixelsGreen)[client] = 0;
+ break;
+ case BLUEMAP:
+ pmapDst->freeBlue -= nalloc;
+ pmapDst->clientPixelsBlue[client] = pmapSrc->clientPixelsBlue[client];
+ pmapSrc->clientPixelsBlue[client] = (Pixel *) NULL;
+ pmapDst->numPixelsBlue[client] = pmapSrc->numPixelsBlue[client];
+ pmapSrc->numPixelsBlue[client] = 0;
+ break;
+ }
+}
+
+/* Free the ith entry in a color map. Must handle freeing of
+ * colors allocated through AllocColorPlanes */
+static void
+FreeCell (ColormapPtr pmap, Pixel i, int channel)
+{
+ EntryPtr pent;
+ int *pCount;
+
+
+ switch (channel)
+ {
+ default: /* so compiler can see that everything gets initialized */
+ case PSEUDOMAP:
+ case REDMAP:
+ pent = (EntryPtr) &pmap->red[i];
+ pCount = &pmap->freeRed;
+ break;
+ case GREENMAP:
+ pent = (EntryPtr) &pmap->green[i];
+ pCount = &pmap->freeGreen;
+ break;
+ case BLUEMAP:
+ pent = (EntryPtr) &pmap->blue[i];
+ pCount = &pmap->freeBlue;
+ break;
+ }
+ /* If it's not privately allocated and it's not time to free it, just
+ * decrement the count */
+ if (pent->refcnt > 1)
+ pent->refcnt--;
+ else
+ {
+ /* If the color type is shared, find the sharedcolor. If decremented
+ * refcnt is 0, free the shared cell. */
+ if (pent->fShared)
+ {
+ if(--pent->co.shco.red->refcnt == 0)
+ xfree(pent->co.shco.red);
+ if(--pent->co.shco.green->refcnt == 0)
+ xfree(pent->co.shco.green);
+ if(--pent->co.shco.blue->refcnt == 0)
+ xfree(pent->co.shco.blue);
+ pent->fShared = FALSE;
+ }
+ pent->refcnt = 0;
+ *pCount += 1;
+ }
+}
+
+static void
+UpdateColors (ColormapPtr pmap)
+{
+ xColorItem *defs;
+ xColorItem *pdef;
+ EntryPtr pent;
+ VisualPtr pVisual;
+ int i, n, size;
+
+ pVisual = pmap->pVisual;
+ size = pVisual->ColormapEntries;
+ defs = xalloc(size * sizeof(xColorItem));
+ if (!defs)
+ return;
+ n = 0;
+ pdef = defs;
+ if (pmap->class == DirectColor)
+ {
+ for (i = 0; i < size; i++)
+ {
+ if (!pmap->red[i].refcnt &&
+ !pmap->green[i].refcnt &&
+ !pmap->blue[i].refcnt)
+ continue;
+ pdef->pixel = ((Pixel)i << pVisual->offsetRed) |
+ ((Pixel)i << pVisual->offsetGreen) |
+ ((Pixel)i << pVisual->offsetBlue);
+ pdef->red = pmap->red[i].co.local.red;
+ pdef->green = pmap->green[i].co.local.green;
+ pdef->blue = pmap->blue[i].co.local.blue;
+ pdef->flags = DoRed|DoGreen|DoBlue;
+ pdef++;
+ n++;
+ }
+ }
+ else
+ {
+ for (i = 0, pent = pmap->red; i < size; i++, pent++)
+ {
+ if (!pent->refcnt)
+ continue;
+ pdef->pixel = i;
+ if(pent->fShared)
+ {
+ pdef->red = pent->co.shco.red->color;
+ pdef->green = pent->co.shco.green->color;
+ pdef->blue = pent->co.shco.blue->color;
+ }
+ else
+ {
+ pdef->red = pent->co.local.red;
+ pdef->green = pent->co.local.green;
+ pdef->blue = pent->co.local.blue;
+ }
+ pdef->flags = DoRed|DoGreen|DoBlue;
+ pdef++;
+ n++;
+ }
+ }
+ if (n)
+ (*pmap->pScreen->StoreColors)(pmap, n, defs);
+ xfree(defs);
+}
+
+/* Get a read-only color from a ColorMap (probably slow for large maps)
+ * Returns by changing the value in pred, pgreen, pblue and pPix
+ */
+int
+AllocColor (ColormapPtr pmap,
+ unsigned short *pred, unsigned short *pgreen, unsigned short *pblue,
+ Pixel *pPix, int client)
+{
+ Pixel pixR, pixG, pixB;
+ int entries;
+ xrgb rgb;
+ int class;
+ VisualPtr pVisual;
+ int npix;
+ Pixel *ppix;
+
+ pVisual = pmap->pVisual;
+ (*pmap->pScreen->ResolveColor) (pred, pgreen, pblue, pVisual);
+ rgb.red = *pred;
+ rgb.green = *pgreen;
+ rgb.blue = *pblue;
+ class = pmap->class;
+ entries = pVisual->ColormapEntries;
+
+ /* If the colormap is being created, then we want to be able to change
+ * the colormap, even if it's a static type. Otherwise, we'd never be
+ * able to initialize static colormaps
+ */
+ if(pmap->flags & BeingCreated)
+ class |= DynamicClass;
+
+ /* If this is one of the static storage classes, and we're not initializing
+ * it, the best we can do is to find the closest color entry to the
+ * requested one and return that.
+ */
+ switch (class) {
+ case StaticColor:
+ case StaticGray:
+ /* Look up all three components in the same pmap */
+ *pPix = pixR = FindBestPixel(pmap->red, entries, &rgb, PSEUDOMAP);
+ *pred = pmap->red[pixR].co.local.red;
+ *pgreen = pmap->red[pixR].co.local.green;
+ *pblue = pmap->red[pixR].co.local.blue;
+ npix = pmap->numPixelsRed[client];
+ ppix = (Pixel *) xrealloc(pmap->clientPixelsRed[client],
+ (npix + 1) * sizeof(Pixel));
+ if (!ppix)
+ return (BadAlloc);
+ ppix[npix] = pixR;
+ pmap->clientPixelsRed[client] = ppix;
+ pmap->numPixelsRed[client]++;
+ break;
+
+ case TrueColor:
+ /* Look up each component in its own map, then OR them together */
+ pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP);
+ pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb, GREENMAP);
+ pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP);
+ *pPix = (pixR << pVisual->offsetRed) |
+ (pixG << pVisual->offsetGreen) |
+ (pixB << pVisual->offsetBlue) |
+ ALPHAMASK(pVisual);
+
+ *pred = pmap->red[pixR].co.local.red;
+ *pgreen = pmap->green[pixG].co.local.green;
+ *pblue = pmap->blue[pixB].co.local.blue;
+ npix = pmap->numPixelsRed[client];
+ ppix = (Pixel *) xrealloc(pmap->clientPixelsRed[client],
+ (npix + 1) * sizeof(Pixel));
+ if (!ppix)
+ return (BadAlloc);
+ ppix[npix] = pixR;
+ pmap->clientPixelsRed[client] = ppix;
+ npix = pmap->numPixelsGreen[client];
+ ppix = (Pixel *) xrealloc(pmap->clientPixelsGreen[client],
+ (npix + 1) * sizeof(Pixel));
+ if (!ppix)
+ return (BadAlloc);
+ ppix[npix] = pixG;
+ pmap->clientPixelsGreen[client] = ppix;
+ npix = pmap->numPixelsBlue[client];
+ ppix = (Pixel *) xrealloc(pmap->clientPixelsBlue[client],
+ (npix + 1) * sizeof(Pixel));
+ if (!ppix)
+ return (BadAlloc);
+ ppix[npix] = pixB;
+ pmap->clientPixelsBlue[client] = ppix;
+ pmap->numPixelsRed[client]++;
+ pmap->numPixelsGreen[client]++;
+ pmap->numPixelsBlue[client]++;
+ break;
+
+ case GrayScale:
+ case PseudoColor:
+ if (pmap->mid != pmap->pScreen->defColormap &&
+ pmap->pVisual->vid == pmap->pScreen->rootVisual)
+ {
+ ColormapPtr prootmap;
+ dixLookupResourceByType((pointer *)&prootmap, pmap->pScreen->defColormap,
+ RT_COLORMAP, clients[client], DixReadAccess);
+
+ if (pmap->class == prootmap->class)
+ FindColorInRootCmap (prootmap, prootmap->red, entries, &rgb,
+ pPix, PSEUDOMAP, AllComp);
+ }
+ if (FindColor(pmap, pmap->red, entries, &rgb, pPix, PSEUDOMAP,
+ client, AllComp) != Success)
+ return (BadAlloc);
+ break;
+
+ case DirectColor:
+ if (pmap->mid != pmap->pScreen->defColormap &&
+ pmap->pVisual->vid == pmap->pScreen->rootVisual)
+ {
+ ColormapPtr prootmap;
+ dixLookupResourceByType((pointer *)&prootmap, pmap->pScreen->defColormap,
+ RT_COLORMAP, clients[client], DixReadAccess);
+
+ if (pmap->class == prootmap->class)
+ {
+ pixR = (*pPix & pVisual->redMask) >> pVisual->offsetRed;
+ FindColorInRootCmap (prootmap, prootmap->red, entries, &rgb,
+ &pixR, REDMAP, RedComp);
+ pixG = (*pPix & pVisual->greenMask) >> pVisual->offsetGreen;
+ FindColorInRootCmap (prootmap, prootmap->green, entries, &rgb,
+ &pixG, GREENMAP, GreenComp);
+ pixB = (*pPix & pVisual->blueMask) >> pVisual->offsetBlue;
+ FindColorInRootCmap (prootmap, prootmap->blue, entries, &rgb,
+ &pixB, BLUEMAP, BlueComp);
+ *pPix = pixR | pixG | pixB;
+ }
+ }
+
+ pixR = (*pPix & pVisual->redMask) >> pVisual->offsetRed;
+ if (FindColor(pmap, pmap->red, NUMRED(pVisual), &rgb, &pixR, REDMAP,
+ client, RedComp) != Success)
+ return (BadAlloc);
+ pixG = (*pPix & pVisual->greenMask) >> pVisual->offsetGreen;
+ if (FindColor(pmap, pmap->green, NUMGREEN(pVisual), &rgb, &pixG,
+ GREENMAP, client, GreenComp) != Success)
+ {
+ (void)FreeCo(pmap, client, REDMAP, 1, &pixR, (Pixel)0);
+ return (BadAlloc);
+ }
+ pixB = (*pPix & pVisual->blueMask) >> pVisual->offsetBlue;
+ if (FindColor(pmap, pmap->blue, NUMBLUE(pVisual), &rgb, &pixB, BLUEMAP,
+ client, BlueComp) != Success)
+ {
+ (void)FreeCo(pmap, client, GREENMAP, 1, &pixG, (Pixel)0);
+ (void)FreeCo(pmap, client, REDMAP, 1, &pixR, (Pixel)0);
+ return (BadAlloc);
+ }
+ *pPix = pixR | pixG | pixB | ALPHAMASK(pVisual);
+
+ break;
+ }
+
+ /* if this is the client's first pixel in this colormap, tell the
+ * resource manager that the client has pixels in this colormap which
+ * should be freed when the client dies */
+ if ((pmap->numPixelsRed[client] == 1) &&
+ (CLIENT_ID(pmap->mid) != client) &&
+ !(pmap->flags & BeingCreated))
+ {
+ colorResource *pcr;
+
+ pcr = xalloc(sizeof(colorResource));
+ if (!pcr)
+ {
+ (void)FreeColors(pmap, client, 1, pPix, (Pixel)0);
+ return (BadAlloc);
+ }
+ pcr->mid = pmap->mid;
+ pcr->client = client;
+ if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr))
+ return (BadAlloc);
+ }
+ return (Success);
+}
+
+/*
+ * FakeAllocColor -- fake an AllocColor request by
+ * returning a free pixel if availible, otherwise returning
+ * the closest matching pixel. This is used by the mi
+ * software sprite code to recolor cursors. A nice side-effect
+ * is that this routine will never return failure.
+ */
+
+void
+FakeAllocColor (ColormapPtr pmap, xColorItem *item)
+{
+ Pixel pixR, pixG, pixB;
+ Pixel temp;
+ int entries;
+ xrgb rgb;
+ int class;
+ VisualPtr pVisual;
+
+ pVisual = pmap->pVisual;
+ rgb.red = item->red;
+ rgb.green = item->green;
+ rgb.blue = item->blue;
+ (*pmap->pScreen->ResolveColor) (&rgb.red, &rgb.green, &rgb.blue, pVisual);
+ class = pmap->class;
+ entries = pVisual->ColormapEntries;
+
+ switch (class) {
+ case GrayScale:
+ case PseudoColor:
+ temp = 0;
+ item->pixel = 0;
+ if (FindColor(pmap, pmap->red, entries, &rgb, &temp, PSEUDOMAP,
+ -1, AllComp) == Success) {
+ item->pixel = temp;
+ break;
+ }
+ /* fall through ... */
+ case StaticColor:
+ case StaticGray:
+ item->pixel = FindBestPixel(pmap->red, entries, &rgb, PSEUDOMAP);
+ break;
+
+ case DirectColor:
+ /* Look up each component in its own map, then OR them together */
+ pixR = (item->pixel & pVisual->redMask) >> pVisual->offsetRed;
+ pixG = (item->pixel & pVisual->greenMask) >> pVisual->offsetGreen;
+ pixB = (item->pixel & pVisual->blueMask) >> pVisual->offsetBlue;
+ if (FindColor(pmap, pmap->red, NUMRED(pVisual), &rgb, &pixR, REDMAP,
+ -1, RedComp) != Success)
+ pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP)
+ << pVisual->offsetRed;
+ if (FindColor(pmap, pmap->green, NUMGREEN(pVisual), &rgb, &pixG,
+ GREENMAP, -1, GreenComp) != Success)
+ pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb,
+ GREENMAP) << pVisual->offsetGreen;
+ if (FindColor(pmap, pmap->blue, NUMBLUE(pVisual), &rgb, &pixB, BLUEMAP,
+ -1, BlueComp) != Success)
+ pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP)
+ << pVisual->offsetBlue;
+ item->pixel = pixR | pixG | pixB;
+ break;
+
+ case TrueColor:
+ /* Look up each component in its own map, then OR them together */
+ pixR = FindBestPixel(pmap->red, NUMRED(pVisual), &rgb, REDMAP);
+ pixG = FindBestPixel(pmap->green, NUMGREEN(pVisual), &rgb, GREENMAP);
+ pixB = FindBestPixel(pmap->blue, NUMBLUE(pVisual), &rgb, BLUEMAP);
+ item->pixel = (pixR << pVisual->offsetRed) |
+ (pixG << pVisual->offsetGreen) |
+ (pixB << pVisual->offsetBlue);
+ break;
+ }
+}
+
+/* free a pixel value obtained from FakeAllocColor */
+void
+FakeFreeColor(ColormapPtr pmap, Pixel pixel)
+{
+ VisualPtr pVisual;
+ Pixel pixR, pixG, pixB;
+
+ switch (pmap->class) {
+ case GrayScale:
+ case PseudoColor:
+ if (pmap->red[pixel].refcnt == AllocTemporary)
+ pmap->red[pixel].refcnt = 0;
+ break;
+ case DirectColor:
+ pVisual = pmap->pVisual;
+ pixR = (pixel & pVisual->redMask) >> pVisual->offsetRed;
+ pixG = (pixel & pVisual->greenMask) >> pVisual->offsetGreen;
+ pixB = (pixel & pVisual->blueMask) >> pVisual->offsetBlue;
+ if (pmap->red[pixR].refcnt == AllocTemporary)
+ pmap->red[pixR].refcnt = 0;
+ if (pmap->green[pixG].refcnt == AllocTemporary)
+ pmap->green[pixG].refcnt = 0;
+ if (pmap->blue[pixB].refcnt == AllocTemporary)
+ pmap->blue[pixB].refcnt = 0;
+ break;
+ }
+}
+
+typedef unsigned short BigNumUpper;
+typedef unsigned long BigNumLower;
+
+#define BIGNUMLOWERBITS 24
+#define BIGNUMUPPERBITS 16
+#define BIGNUMLOWER (1 << BIGNUMLOWERBITS)
+#define BIGNUMUPPER (1 << BIGNUMUPPERBITS)
+#define UPPERPART(i) ((i) >> BIGNUMLOWERBITS)
+#define LOWERPART(i) ((i) & (BIGNUMLOWER - 1))
+
+typedef struct _bignum {
+ BigNumUpper upper;
+ BigNumLower lower;
+} BigNumRec, *BigNumPtr;
+
+#define BigNumGreater(x,y) (((x)->upper > (y)->upper) ||\
+ ((x)->upper == (y)->upper && (x)->lower > (y)->lower))
+
+#define UnsignedToBigNum(u,r) (((r)->upper = UPPERPART(u)), \
+ ((r)->lower = LOWERPART(u)))
+
+#define MaxBigNum(r) (((r)->upper = BIGNUMUPPER-1), \
+ ((r)->lower = BIGNUMLOWER-1))
+
+static void
+BigNumAdd (BigNumPtr x, BigNumPtr y, BigNumPtr r)
+{
+ BigNumLower lower, carry = 0;
+
+ lower = x->lower + y->lower;
+ if (lower >= BIGNUMLOWER) {
+ lower -= BIGNUMLOWER;
+ carry = 1;
+ }
+ r->lower = lower;
+ r->upper = x->upper + y->upper + carry;
+}
+
+static Pixel
+FindBestPixel(EntryPtr pentFirst, int size, xrgb *prgb, int channel)
+{
+ EntryPtr pent;
+ Pixel pixel, final;
+ long dr, dg, db;
+ unsigned long sq;
+ BigNumRec minval, sum, temp;
+
+ final = 0;
+ MaxBigNum(&minval);
+ /* look for the minimal difference */
+ for (pent = pentFirst, pixel = 0; pixel < size; pent++, pixel++)
+ {
+ dr = dg = db = 0;
+ switch(channel)
+ {
+ case PSEUDOMAP:
+ dg = (long) pent->co.local.green - prgb->green;
+ db = (long) pent->co.local.blue - prgb->blue;
+ case REDMAP:
+ dr = (long) pent->co.local.red - prgb->red;
+ break;
+ case GREENMAP:
+ dg = (long) pent->co.local.green - prgb->green;
+ break;
+ case BLUEMAP:
+ db = (long) pent->co.local.blue - prgb->blue;
+ break;
+ }
+ sq = dr * dr;
+ UnsignedToBigNum (sq, &sum);
+ sq = dg * dg;
+ UnsignedToBigNum (sq, &temp);
+ BigNumAdd (&sum, &temp, &sum);
+ sq = db * db;
+ UnsignedToBigNum (sq, &temp);
+ BigNumAdd (&sum, &temp, &sum);
+ if (BigNumGreater (&minval, &sum))
+ {
+ final = pixel;
+ minval = sum;
+ }
+ }
+ return(final);
+}
+
+static void
+FindColorInRootCmap (ColormapPtr pmap, EntryPtr pentFirst, int size,
+ xrgb *prgb, Pixel *pPixel, int channel,
+ ColorCompareProcPtr comp)
+{
+ EntryPtr pent;
+ Pixel pixel;
+ int count;
+
+ if ((pixel = *pPixel) >= size)
+ pixel = 0;
+ for (pent = pentFirst + pixel, count = size; --count >= 0; pent++, pixel++)
+ {
+ if (pent->refcnt > 0 && (*comp) (pent, prgb))
+ {
+ switch (channel)
+ {
+ case REDMAP:
+ pixel <<= pmap->pVisual->offsetRed;
+ break;
+ case GREENMAP:
+ pixel <<= pmap->pVisual->offsetGreen;
+ break;
+ case BLUEMAP:
+ pixel <<= pmap->pVisual->offsetBlue;
+ break;
+ default: /* PSEUDOMAP */
+ break;
+ }
+ *pPixel = pixel;
+ }
+ }
+}
+
+/* Tries to find a color in pmap that exactly matches the one requested in prgb
+ * if it can't it allocates one.
+ * Starts looking at pentFirst + *pPixel, so if you want a specific pixel,
+ * load *pPixel with that value, otherwise set it to 0
+ */
+int
+FindColor (ColormapPtr pmap, EntryPtr pentFirst, int size, xrgb *prgb,
+ Pixel *pPixel, int channel, int client,
+ ColorCompareProcPtr comp)
+{
+ EntryPtr pent;
+ Bool foundFree;
+ Pixel pixel, Free = 0;
+ int npix, count, *nump = NULL;
+ Pixel **pixp = NULL, *ppix;
+ xColorItem def;
+
+ foundFree = FALSE;
+
+ if((pixel = *pPixel) >= size)
+ pixel = 0;
+ /* see if there is a match, and also look for a free entry */
+ for (pent = pentFirst + pixel, count = size; --count >= 0; )
+ {
+ if (pent->refcnt > 0)
+ {
+ if ((*comp) (pent, prgb))
+ {
+ if (client >= 0)
+ pent->refcnt++;
+ *pPixel = pixel;
+ switch(channel)
+ {
+ case REDMAP:
+ *pPixel <<= pmap->pVisual->offsetRed;
+ case PSEUDOMAP:
+ break;
+ case GREENMAP:
+ *pPixel <<= pmap->pVisual->offsetGreen;
+ break;
+ case BLUEMAP:
+ *pPixel <<= pmap->pVisual->offsetBlue;
+ break;
+ }
+ goto gotit;
+ }
+ }
+ else if (!foundFree && pent->refcnt == 0)
+ {
+ Free = pixel;
+ foundFree = TRUE;
+ /* If we're initializing the colormap, then we are looking for
+ * the first free cell we can find, not to minimize the number
+ * of entries we use. So don't look any further. */
+ if(pmap->flags & BeingCreated)
+ break;
+ }
+ pixel++;
+ if(pixel >= size)
+ {
+ pent = pentFirst;
+ pixel = 0;
+ }
+ else
+ pent++;
+ }
+
+ /* If we got here, we didn't find a match. If we also didn't find
+ * a free entry, we're out of luck. Otherwise, we'll usurp a free
+ * entry and fill it in */
+ if (!foundFree)
+ return (BadAlloc);
+ pent = pentFirst + Free;
+ pent->fShared = FALSE;
+ pent->refcnt = (client >= 0) ? 1 : AllocTemporary;
+
+ switch (channel)
+ {
+ case PSEUDOMAP:
+ pent->co.local.red = prgb->red;
+ pent->co.local.green = prgb->green;
+ pent->co.local.blue = prgb->blue;
+ def.red = prgb->red;
+ def.green = prgb->green;
+ def.blue = prgb->blue;
+ def.flags = (DoRed|DoGreen|DoBlue);
+ if (client >= 0)
+ pmap->freeRed--;
+ def.pixel = Free;
+ break;
+
+ case REDMAP:
+ pent->co.local.red = prgb->red;
+ def.red = prgb->red;
+ def.green = pmap->green[0].co.local.green;
+ def.blue = pmap->blue[0].co.local.blue;
+ def.flags = DoRed;
+ if (client >= 0)
+ pmap->freeRed--;
+ def.pixel = Free << pmap->pVisual->offsetRed;
+ break;
+
+ case GREENMAP:
+ pent->co.local.green = prgb->green;
+ def.red = pmap->red[0].co.local.red;
+ def.green = prgb->green;
+ def.blue = pmap->blue[0].co.local.blue;
+ def.flags = DoGreen;
+ if (client >= 0)
+ pmap->freeGreen--;
+ def.pixel = Free << pmap->pVisual->offsetGreen;
+ break;
+
+ case BLUEMAP:
+ pent->co.local.blue = prgb->blue;
+ def.red = pmap->red[0].co.local.red;
+ def.green = pmap->green[0].co.local.green;
+ def.blue = prgb->blue;
+ def.flags = DoBlue;
+ if (client >= 0)
+ pmap->freeBlue--;
+ def.pixel = Free << pmap->pVisual->offsetBlue;
+ break;
+ }
+ (*pmap->pScreen->StoreColors) (pmap, 1, &def);
+ pixel = Free;
+ *pPixel = def.pixel;
+
+gotit:
+ if (pmap->flags & BeingCreated || client == -1)
+ return(Success);
+ /* Now remember the pixel, for freeing later */
+ switch (channel)
+ {
+ case PSEUDOMAP:
+ case REDMAP:
+ nump = pmap->numPixelsRed;
+ pixp = pmap->clientPixelsRed;
+ break;
+
+ case GREENMAP:
+ nump = pmap->numPixelsGreen;
+ pixp = pmap->clientPixelsGreen;
+ break;
+
+ case BLUEMAP:
+ nump = pmap->numPixelsBlue;
+ pixp = pmap->clientPixelsBlue;
+ break;
+ }
+ npix = nump[client];
+ ppix = (Pixel *) xrealloc (pixp[client], (npix + 1) * sizeof(Pixel));
+ if (!ppix)
+ {
+ pent->refcnt--;
+ if (!pent->fShared)
+ switch (channel)
+ {
+ case PSEUDOMAP:
+ case REDMAP:
+ pmap->freeRed++;
+ break;
+ case GREENMAP:
+ pmap->freeGreen++;
+ break;
+ case BLUEMAP:
+ pmap->freeBlue++;
+ break;
+ }
+ return(BadAlloc);
+ }
+ ppix[npix] = pixel;
+ pixp[client] = ppix;
+ nump[client]++;
+
+ return(Success);
+}
+
+/* Comparison functions -- passed to FindColor to determine if an
+ * entry is already the color we're looking for or not */
+static int
+AllComp (EntryPtr pent, xrgb *prgb)
+{
+ if((pent->co.local.red == prgb->red) &&
+ (pent->co.local.green == prgb->green) &&
+ (pent->co.local.blue == prgb->blue) )
+ return (1);
+ return (0);
+}
+
+static int
+RedComp (EntryPtr pent, xrgb *prgb)
+{
+ if (pent->co.local.red == prgb->red)
+ return (1);
+ return (0);
+}
+
+static int
+GreenComp (EntryPtr pent, xrgb *prgb)
+{
+ if (pent->co.local.green == prgb->green)
+ return (1);
+ return (0);
+}
+
+static int
+BlueComp (EntryPtr pent, xrgb *prgb)
+{
+ if (pent->co.local.blue == prgb->blue)
+ return (1);
+ return (0);
+}
+
+
+/* Read the color value of a cell */
+
+int
+QueryColors (ColormapPtr pmap, int count, Pixel *ppixIn, xrgb *prgbList)
+{
+ Pixel *ppix, pixel;
+ xrgb *prgb;
+ VisualPtr pVisual;
+ EntryPtr pent;
+ Pixel i;
+ int errVal = Success;
+
+ pVisual = pmap->pVisual;
+ if ((pmap->class | DynamicClass) == DirectColor)
+ {
+ int numred, numgreen, numblue;
+ Pixel rgbbad;
+
+ numred = NUMRED(pVisual);
+ numgreen = NUMGREEN(pVisual);
+ numblue = NUMBLUE(pVisual);
+ rgbbad = ~RGBMASK(pVisual);
+ for( ppix = ppixIn, prgb = prgbList; --count >= 0; ppix++, prgb++)
+ {
+ pixel = *ppix;
+ if (pixel & rgbbad) {
+ clientErrorValue = pixel;
+ errVal = BadValue;
+ continue;
+ }
+ i = (pixel & pVisual->redMask) >> pVisual->offsetRed;
+ if (i >= numred)
+ {
+ clientErrorValue = pixel;
+ errVal = BadValue;
+ continue;
+ }
+ prgb->red = pmap->red[i].co.local.red;
+ i = (pixel & pVisual->greenMask) >> pVisual->offsetGreen;
+ if (i >= numgreen)
+ {
+ clientErrorValue = pixel;
+ errVal = BadValue;
+ continue;
+ }
+ prgb->green = pmap->green[i].co.local.green;
+ i = (pixel & pVisual->blueMask) >> pVisual->offsetBlue;
+ if (i >= numblue)
+ {
+ clientErrorValue = pixel;
+ errVal = BadValue;
+ continue;
+ }
+ prgb->blue = pmap->blue[i].co.local.blue;
+ }
+ }
+ else
+ {
+ for( ppix = ppixIn, prgb = prgbList; --count >= 0; ppix++, prgb++)
+ {
+ pixel = *ppix;
+ if (pixel >= pVisual->ColormapEntries)
+ {
+ clientErrorValue = pixel;
+ errVal = BadValue;
+ }
+ else
+ {
+ pent = (EntryPtr)&pmap->red[pixel];
+ if (pent->fShared)
+ {
+ prgb->red = pent->co.shco.red->color;
+ prgb->green = pent->co.shco.green->color;
+ prgb->blue = pent->co.shco.blue->color;
+ }
+ else
+ {
+ prgb->red = pent->co.local.red;
+ prgb->green = pent->co.local.green;
+ prgb->blue = pent->co.local.blue;
+ }
+ }
+ }
+ }
+ return (errVal);
+}
+
+static void
+FreePixels(ColormapPtr pmap, int client)
+{
+ Pixel *ppix, *ppixStart;
+ int n;
+ int class;
+
+ class = pmap->class;
+ ppixStart = pmap->clientPixelsRed[client];
+ if (class & DynamicClass)
+ {
+ n = pmap->numPixelsRed[client];
+ for (ppix = ppixStart; --n >= 0; )
+ {
+ FreeCell(pmap, *ppix, REDMAP);
+ ppix++;
+ }
+ }
+
+ xfree(ppixStart);
+ pmap->clientPixelsRed[client] = (Pixel *) NULL;
+ pmap->numPixelsRed[client] = 0;
+ if ((class | DynamicClass) == DirectColor)
+ {
+ ppixStart = pmap->clientPixelsGreen[client];
+ if (class & DynamicClass)
+ for (ppix = ppixStart, n = pmap->numPixelsGreen[client]; --n >= 0;)
+ FreeCell(pmap, *ppix++, GREENMAP);
+ xfree(ppixStart);
+ pmap->clientPixelsGreen[client] = (Pixel *) NULL;
+ pmap->numPixelsGreen[client] = 0;
+
+ ppixStart = pmap->clientPixelsBlue[client];
+ if (class & DynamicClass)
+ for (ppix = ppixStart, n = pmap->numPixelsBlue[client]; --n >= 0; )
+ FreeCell(pmap, *ppix++, BLUEMAP);
+ xfree(ppixStart);
+ pmap->clientPixelsBlue[client] = (Pixel *) NULL;
+ pmap->numPixelsBlue[client] = 0;
+ }
+}
+
+/**
+ * Frees all of a client's colors and cells.
+ *
+ * \param value must conform to DeleteType
+ * \unused fakeid
+ */
+int
+FreeClientPixels (pointer value, XID fakeid)
+{
+ pointer pmap;
+ colorResource *pcr = value;
+ int rc;
+
+ rc = dixLookupResourceByType(&pmap, pcr->mid, RT_COLORMAP, serverClient,
+ DixRemoveAccess);
+ if (rc == Success)
+ FreePixels((ColormapPtr)pmap, pcr->client);
+ xfree(pcr);
+ return Success;
+}
+
+int
+AllocColorCells (int client, ColormapPtr pmap, int colors, int planes,
+ Bool contig, Pixel *ppix, Pixel *masks)
+{
+ Pixel rmask, gmask, bmask, *ppixFirst, r, g, b;
+ int n, class;
+ int ok;
+ int oldcount;
+ colorResource *pcr = (colorResource *)NULL;
+
+ class = pmap->class;
+ if (!(class & DynamicClass))
+ return (BadAlloc); /* Shouldn't try on this type */
+ oldcount = pmap->numPixelsRed[client];
+ if (pmap->class == DirectColor)
+ oldcount += pmap->numPixelsGreen[client] + pmap->numPixelsBlue[client];
+ if (!oldcount && (CLIENT_ID(pmap->mid) != client))
+ {
+ pcr = xalloc(sizeof(colorResource));
+ if (!pcr)
+ return (BadAlloc);
+ }
+
+ if (pmap->class == DirectColor)
+ {
+ ok = AllocDirect (client, pmap, colors, planes, planes, planes,
+ contig, ppix, &rmask, &gmask, &bmask);
+ if(ok == Success)
+ {
+ for (r = g = b = 1, n = planes; --n >= 0; r += r, g += g, b += b)
+ {
+ while(!(rmask & r))
+ r += r;
+ while(!(gmask & g))
+ g += g;
+ while(!(bmask & b))
+ b += b;
+ *masks++ = r | g | b;
+ }
+ }
+ }
+ else
+ {
+ ok = AllocPseudo (client, pmap, colors, planes, contig, ppix, &rmask,
+ &ppixFirst);
+ if(ok == Success)
+ {
+ for (r = 1, n = planes; --n >= 0; r += r)
+ {
+ while(!(rmask & r))
+ r += r;
+ *masks++ = r;
+ }
+ }
+ }
+
+ /* if this is the client's first pixels in this colormap, tell the
+ * resource manager that the client has pixels in this colormap which
+ * should be freed when the client dies */
+ if ((ok == Success) && pcr)
+ {
+ pcr->mid = pmap->mid;
+ pcr->client = client;
+ if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr))
+ ok = BadAlloc;
+ } else if (pcr)
+ xfree(pcr);
+
+ return (ok);
+}
+
+
+int
+AllocColorPlanes (int client, ColormapPtr pmap, int colors,
+ int r, int g, int b, Bool contig, Pixel *pixels,
+ Pixel *prmask, Pixel *pgmask, Pixel *pbmask)
+{
+ int ok;
+ Pixel mask, *ppixFirst;
+ Pixel shift;
+ int i;
+ int class;
+ int oldcount;
+ colorResource *pcr = (colorResource *)NULL;
+
+ class = pmap->class;
+ if (!(class & DynamicClass))
+ return (BadAlloc); /* Shouldn't try on this type */
+ oldcount = pmap->numPixelsRed[client];
+ if (class == DirectColor)
+ oldcount += pmap->numPixelsGreen[client] + pmap->numPixelsBlue[client];
+ if (!oldcount && (CLIENT_ID(pmap->mid) != client))
+ {
+ pcr = xalloc(sizeof(colorResource));
+ if (!pcr)
+ return (BadAlloc);
+ }
+
+ if (class == DirectColor)
+ {
+ ok = AllocDirect (client, pmap, colors, r, g, b, contig, pixels,
+ prmask, pgmask, pbmask);
+ }
+ else
+ {
+ /* Allocate the proper pixels */
+ /* XXX This is sort of bad, because of contig is set, we force all
+ * r + g + b bits to be contiguous. Should only force contiguity
+ * per mask
+ */
+ ok = AllocPseudo (client, pmap, colors, r + g + b, contig, pixels,
+ &mask, &ppixFirst);
+
+ if(ok == Success)
+ {
+ /* now split that mask into three */
+ *prmask = *pgmask = *pbmask = 0;
+ shift = 1;
+ for (i = r; --i >= 0; shift += shift)
+ {
+ while (!(mask & shift))
+ shift += shift;
+ *prmask |= shift;
+ }
+ for (i = g; --i >= 0; shift += shift)
+ {
+ while (!(mask & shift))
+ shift += shift;
+ *pgmask |= shift;
+ }
+ for (i = b; --i >= 0; shift += shift)
+ {
+ while (!(mask & shift))
+ shift += shift;
+ *pbmask |= shift;
+ }
+
+ /* set up the shared color cells */
+ if (!AllocShared(pmap, pixels, colors, r, g, b,
+ *prmask, *pgmask, *pbmask, ppixFirst))
+ {
+ (void)FreeColors(pmap, client, colors, pixels, mask);
+ ok = BadAlloc;
+ }
+ }
+ }
+
+ /* if this is the client's first pixels in this colormap, tell the
+ * resource manager that the client has pixels in this colormap which
+ * should be freed when the client dies */
+ if ((ok == Success) && pcr)
+ {
+ pcr->mid = pmap->mid;
+ pcr->client = client;
+ if (!AddResource(FakeClientID(client), RT_CMAPENTRY, (pointer)pcr))
+ ok = BadAlloc;
+ } else if (pcr)
+ xfree(pcr);
+
+ return (ok);
+}
+
+static int
+AllocDirect (int client, ColormapPtr pmap, int c, int r, int g, int b, Bool contig,
+ Pixel *pixels, Pixel *prmask, Pixel *pgmask, Pixel *pbmask)
+{
+ Pixel *ppixRed, *ppixGreen, *ppixBlue;
+ Pixel *ppix, *pDst, *p;
+ int npix, npixR, npixG, npixB;
+ Bool okR, okG, okB;
+ Pixel *rpix = 0, *gpix = 0, *bpix = 0;
+
+ npixR = c << r;
+ npixG = c << g;
+ npixB = c << b;
+ if ((r >= 32) || (g >= 32) || (b >= 32) ||
+ (npixR > pmap->freeRed) || (npixR < c) ||
+ (npixG > pmap->freeGreen) || (npixG < c) ||
+ (npixB > pmap->freeBlue) || (npixB < c))
+ return BadAlloc;
+
+ /* start out with empty pixels */
+ for(p = pixels; p < pixels + c; p++)
+ *p = 0;
+
+ ppixRed = xalloc(npixR * sizeof(Pixel));
+ ppixGreen = xalloc(npixG * sizeof(Pixel));
+ ppixBlue = xalloc(npixB * sizeof(Pixel));
+ if (!ppixRed || !ppixGreen || !ppixBlue)
+ {
+ if (ppixBlue) xfree(ppixBlue);
+ if (ppixGreen) xfree(ppixGreen);
+ if (ppixRed) xfree(ppixRed);
+ return(BadAlloc);
+ }
+
+ okR = AllocCP(pmap, pmap->red, c, r, contig, ppixRed, prmask);
+ okG = AllocCP(pmap, pmap->green, c, g, contig, ppixGreen, pgmask);
+ okB = AllocCP(pmap, pmap->blue, c, b, contig, ppixBlue, pbmask);
+
+ if (okR && okG && okB)
+ {
+ rpix = (Pixel *) xrealloc(pmap->clientPixelsRed[client],
+ (pmap->numPixelsRed[client] + (c << r)) *
+ sizeof(Pixel));
+ if (rpix)
+ pmap->clientPixelsRed[client] = rpix;
+ gpix = (Pixel *) xrealloc(pmap->clientPixelsGreen[client],
+ (pmap->numPixelsGreen[client] + (c << g)) *
+ sizeof(Pixel));
+ if (gpix)
+ pmap->clientPixelsGreen[client] = gpix;
+ bpix = (Pixel *) xrealloc(pmap->clientPixelsBlue[client],
+ (pmap->numPixelsBlue[client] + (c << b)) *
+ sizeof(Pixel));
+ if (bpix)
+ pmap->clientPixelsBlue[client] = bpix;
+ }
+
+ if (!okR || !okG || !okB || !rpix || !gpix || !bpix)
+ {
+ if (okR)
+ for(ppix = ppixRed, npix = npixR; --npix >= 0; ppix++)
+ pmap->red[*ppix].refcnt = 0;
+ if (okG)
+ for(ppix = ppixGreen, npix = npixG; --npix >= 0; ppix++)
+ pmap->green[*ppix].refcnt = 0;
+ if (okB)
+ for(ppix = ppixBlue, npix = npixB; --npix >= 0; ppix++)
+ pmap->blue[*ppix].refcnt = 0;
+ xfree(ppixBlue);
+ xfree(ppixGreen);
+ xfree(ppixRed);
+ return(BadAlloc);
+ }
+
+ *prmask <<= pmap->pVisual->offsetRed;
+ *pgmask <<= pmap->pVisual->offsetGreen;
+ *pbmask <<= pmap->pVisual->offsetBlue;
+
+ ppix = rpix + pmap->numPixelsRed[client];
+ for (pDst = pixels, p = ppixRed; p < ppixRed + npixR; p++)
+ {
+ *ppix++ = *p;
+ if(p < ppixRed + c)
+ *pDst++ |= *p << pmap->pVisual->offsetRed;
+ }
+ pmap->numPixelsRed[client] += npixR;
+ pmap->freeRed -= npixR;
+
+ ppix = gpix + pmap->numPixelsGreen[client];
+ for (pDst = pixels, p = ppixGreen; p < ppixGreen + npixG; p++)
+ {
+ *ppix++ = *p;
+ if(p < ppixGreen + c)
+ *pDst++ |= *p << pmap->pVisual->offsetGreen;
+ }
+ pmap->numPixelsGreen[client] += npixG;
+ pmap->freeGreen -= npixG;
+
+ ppix = bpix + pmap->numPixelsBlue[client];
+ for (pDst = pixels, p = ppixBlue; p < ppixBlue + npixB; p++)
+ {
+ *ppix++ = *p;
+ if(p < ppixBlue + c)
+ *pDst++ |= *p << pmap->pVisual->offsetBlue;
+ }
+ pmap->numPixelsBlue[client] += npixB;
+ pmap->freeBlue -= npixB;
+
+
+ for (pDst = pixels; pDst < pixels + c; pDst++)
+ *pDst |= ALPHAMASK(pmap->pVisual);
+
+ xfree(ppixBlue);
+ xfree(ppixGreen);
+ xfree(ppixRed);
+
+ return (Success);
+}
+
+static int
+AllocPseudo (int client, ColormapPtr pmap, int c, int r, Bool contig,
+ Pixel *pixels, Pixel *pmask, Pixel **pppixFirst)
+{
+ Pixel *ppix, *p, *pDst, *ppixTemp;
+ int npix;
+ Bool ok;
+
+ npix = c << r;
+ if ((r >= 32) || (npix > pmap->freeRed) || (npix < c))
+ return(BadAlloc);
+ if(!(ppixTemp = xalloc(npix * sizeof(Pixel))))
+ return(BadAlloc);
+ ok = AllocCP(pmap, pmap->red, c, r, contig, ppixTemp, pmask);
+
+ if (ok)
+ {
+
+ /* all the allocated pixels are added to the client pixel list,
+ * but only the unique ones are returned to the client */
+ ppix = (Pixel *)xrealloc(pmap->clientPixelsRed[client],
+ (pmap->numPixelsRed[client] + npix) * sizeof(Pixel));
+ if (!ppix)
+ {
+ for (p = ppixTemp; p < ppixTemp + npix; p++)
+ pmap->red[*p].refcnt = 0;
+ return (BadAlloc);
+ }
+ pmap->clientPixelsRed[client] = ppix;
+ ppix += pmap->numPixelsRed[client];
+ *pppixFirst = ppix;
+ pDst = pixels;
+ for (p = ppixTemp; p < ppixTemp + npix; p++)
+ {
+ *ppix++ = *p;
+ if(p < ppixTemp + c)
+ *pDst++ = *p;
+ }
+ pmap->numPixelsRed[client] += npix;
+ pmap->freeRed -= npix;
+ }
+ xfree(ppixTemp);
+ return (ok ? Success : BadAlloc);
+}
+
+/* Allocates count << planes pixels from colormap pmap for client. If
+ * contig, then the plane mask is made of consecutive bits. Returns
+ * all count << pixels in the array pixels. The first count of those
+ * pixels are the unique pixels. *pMask has the mask to Or with the
+ * unique pixels to get the rest of them.
+ *
+ * Returns True iff all pixels could be allocated
+ * All cells allocated will have refcnt set to AllocPrivate and shared to FALSE
+ * (see AllocShared for why we care)
+ */
+static Bool
+AllocCP (ColormapPtr pmap, EntryPtr pentFirst, int count, int planes,
+ Bool contig, Pixel *pixels, Pixel *pMask)
+{
+ EntryPtr ent;
+ Pixel pixel, base, entries, maxp, save;
+ int dplanes, found;
+ Pixel *ppix;
+ Pixel mask;
+ Pixel finalmask;
+
+ dplanes = pmap->pVisual->nplanes;
+
+ /* Easy case. Allocate pixels only */
+ if (planes == 0)
+ {
+ /* allocate writable entries */
+ ppix = pixels;
+ ent = pentFirst;
+ pixel = 0;
+ while (--count >= 0)
+ {
+ /* Just find count unallocated cells */
+ while (ent->refcnt)
+ {
+ ent++;
+ pixel++;
+ }
+ ent->refcnt = AllocPrivate;
+ *ppix++ = pixel;
+ ent->fShared = FALSE;
+ }
+ *pMask = 0;
+ return (TRUE);
+ }
+ else if (planes > dplanes)
+ {
+ return (FALSE);
+ }
+
+ /* General case count pixels * 2 ^ planes cells to be allocated */
+
+ /* make room for new pixels */
+ ent = pentFirst;
+
+ /* first try for contiguous planes, since it's fastest */
+ for (mask = (((Pixel)1) << planes) - 1, base = 1, dplanes -= (planes - 1);
+ --dplanes >= 0;
+ mask += mask, base += base)
+ {
+ ppix = pixels;
+ found = 0;
+ pixel = 0;
+ entries = pmap->pVisual->ColormapEntries - mask;
+ while (pixel < entries)
+ {
+ save = pixel;
+ maxp = pixel + mask + base;
+ /* check if all are free */
+ while (pixel != maxp && ent[pixel].refcnt == 0)
+ pixel += base;
+ if (pixel == maxp)
+ {
+ /* this one works */
+ *ppix++ = save;
+ found++;
+ if (found == count)
+ {
+ /* found enough, allocate them all */
+ while (--count >= 0)
+ {
+ pixel = pixels[count];
+ maxp = pixel + mask;
+ while (1)
+ {
+ ent[pixel].refcnt = AllocPrivate;
+ ent[pixel].fShared = FALSE;
+ if (pixel == maxp)
+ break;
+ pixel += base;
+ *ppix++ = pixel;
+ }
+ }
+ *pMask = mask;
+ return (TRUE);
+ }
+ }
+ pixel = save + 1;
+ if (pixel & mask)
+ pixel += mask;
+ }
+ }
+
+ dplanes = pmap->pVisual->nplanes;
+ if (contig || planes == 1 || dplanes < 3)
+ return (FALSE);
+
+ /* this will be very slow for large maps, need a better algorithm */
+
+ /*
+ we can generate the smallest and largest numbers that fits in dplanes
+ bits and contain exactly planes bits set as follows. First, we need to
+ check that it is possible to generate such a mask at all.
+ (Non-contiguous masks need one more bit than contiguous masks). Then
+ the smallest such mask consists of the rightmost planes-1 bits set, then
+ a zero, then a one in position planes + 1. The formula is
+ (3 << (planes-1)) -1
+ The largest such masks consists of the leftmost planes-1 bits set, then
+ a zero, then a one bit in position dplanes-planes-1. If dplanes is
+ smaller than 32 (the number of bits in a word) then the formula is:
+ (1<<dplanes) - (1<<(dplanes-planes+1) + (1<<dplanes-planes-1)
+ If dplanes = 32, then we can't calculate (1<<dplanes) and we have
+ to use:
+ ( (1<<(planes-1)) - 1) << (dplanes-planes+1) + (1<<(dplanes-planes-1))
+
+ << Thank you, Loretta>>>
+
+ */
+
+ finalmask =
+ (((((Pixel)1)<<(planes-1)) - 1) << (dplanes-planes+1)) +
+ (((Pixel)1)<<(dplanes-planes-1));
+ for (mask = (((Pixel)3) << (planes -1)) - 1; mask <= finalmask; mask++)
+ {
+ /* next 3 magic statements count number of ones (HAKMEM #169) */
+ pixel = (mask >> 1) & 033333333333;
+ pixel = mask - pixel - ((pixel >> 1) & 033333333333);
+ if ((((pixel + (pixel >> 3)) & 030707070707) % 077) != planes)
+ continue;
+ ppix = pixels;
+ found = 0;
+ entries = pmap->pVisual->ColormapEntries - mask;
+ base = lowbit (mask);
+ for (pixel = 0; pixel < entries; pixel++)
+ {
+ if (pixel & mask)
+ continue;
+ maxp = 0;
+ /* check if all are free */
+ while (ent[pixel + maxp].refcnt == 0)
+ {
+ GetNextBitsOrBreak(maxp, mask, base);
+ }
+ if ((maxp < mask) || (ent[pixel + mask].refcnt != 0))
+ continue;
+ /* this one works */
+ *ppix++ = pixel;
+ found++;
+ if (found < count)
+ continue;
+ /* found enough, allocate them all */
+ while (--count >= 0)
+ {
+ pixel = (pixels)[count];
+ maxp = 0;
+ while (1)
+ {
+ ent[pixel + maxp].refcnt = AllocPrivate;
+ ent[pixel + maxp].fShared = FALSE;
+ GetNextBitsOrBreak(maxp, mask, base);
+ *ppix++ = pixel + maxp;
+ }
+ }
+
+ *pMask = mask;
+ return (TRUE);
+ }
+ }
+ return (FALSE);
+}
+
+/**
+ *
+ * \param ppixFirst First of the client's new pixels
+ */
+static Bool
+AllocShared (ColormapPtr pmap, Pixel *ppix, int c, int r, int g, int b,
+ Pixel rmask, Pixel gmask, Pixel bmask, Pixel *ppixFirst)
+{
+ Pixel *pptr, *cptr;
+ int npix, z, npixClientNew, npixShared;
+ Pixel basemask, base, bits, common;
+ SHAREDCOLOR *pshared, **ppshared, **psharedList;
+
+ npixClientNew = c << (r + g + b);
+ npixShared = (c << r) + (c << g) + (c << b);
+ psharedList = xalloc(npixShared * sizeof(SHAREDCOLOR *));
+ if (!psharedList)
+ return FALSE;
+ ppshared = psharedList;
+ for (z = npixShared; --z >= 0; )
+ {
+ if (!(ppshared[z] = xalloc(sizeof(SHAREDCOLOR))))
+ {
+ for (z++ ; z < npixShared; z++)
+ xfree(ppshared[z]);
+ return FALSE;
+ }
+ }
+ for(pptr = ppix, npix = c; --npix >= 0; pptr++)
+ {
+ basemask = ~(gmask | bmask);
+ common = *pptr & basemask;
+ if (rmask)
+ {
+ bits = 0;
+ base = lowbit (rmask);
+ while(1)
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (g + b);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == (common | bits))
+ {
+ pmap->red[*cptr].fShared = TRUE;
+ pmap->red[*cptr].co.shco.red = pshared;
+ }
+ }
+ GetNextBitsOrBreak(bits, rmask, base);
+ }
+ }
+ else
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (g + b);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == common)
+ {
+ pmap->red[*cptr].fShared = TRUE;
+ pmap->red[*cptr].co.shco.red = pshared;
+ }
+ }
+ }
+ basemask = ~(rmask | bmask);
+ common = *pptr & basemask;
+ if (gmask)
+ {
+ bits = 0;
+ base = lowbit (gmask);
+ while(1)
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (r + b);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == (common | bits))
+ {
+ pmap->red[*cptr].co.shco.green = pshared;
+ }
+ }
+ GetNextBitsOrBreak(bits, gmask, base);
+ }
+ }
+ else
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (g + b);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == common)
+ {
+ pmap->red[*cptr].co.shco.green = pshared;
+ }
+ }
+ }
+ basemask = ~(rmask | gmask);
+ common = *pptr & basemask;
+ if (bmask)
+ {
+ bits = 0;
+ base = lowbit (bmask);
+ while(1)
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (r + g);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == (common | bits))
+ {
+ pmap->red[*cptr].co.shco.blue = pshared;
+ }
+ }
+ GetNextBitsOrBreak(bits, bmask, base);
+ }
+ }
+ else
+ {
+ pshared = *ppshared++;
+ pshared->refcnt = 1 << (g + b);
+ for (cptr = ppixFirst, z = npixClientNew; --z >= 0; cptr++)
+ {
+ if ((*cptr & basemask) == common)
+ {
+ pmap->red[*cptr].co.shco.blue = pshared;
+ }
+ }
+ }
+ }
+ xfree(psharedList);
+ return TRUE;
+}
+
+
+/** FreeColors
+ * Free colors and/or cells (probably slow for large numbers)
+ */
+int
+FreeColors (ColormapPtr pmap, int client, int count, Pixel *pixels, Pixel mask)
+{
+ int rval, result, class;
+ Pixel rmask;
+
+ class = pmap->class;
+ if (pmap->flags & AllAllocated)
+ return(BadAccess);
+ if ((class | DynamicClass) == DirectColor)
+ {
+ rmask = mask & RGBMASK(pmap->pVisual);
+ result = FreeCo(pmap, client, REDMAP, count, pixels,
+ mask & pmap->pVisual->redMask);
+ /* If any of the three calls fails, we must report that, if more
+ * than one fails, it's ok that we report the last one */
+ rval = FreeCo(pmap, client, GREENMAP, count, pixels,
+ mask & pmap->pVisual->greenMask);
+ if(rval != Success)
+ result = rval;
+ rval = FreeCo(pmap, client, BLUEMAP, count, pixels,
+ mask & pmap->pVisual->blueMask);
+ if(rval != Success)
+ result = rval;
+ }
+ else
+ {
+ rmask = mask & ((((Pixel)1) << pmap->pVisual->nplanes) - 1);
+ result = FreeCo(pmap, client, PSEUDOMAP, count, pixels, rmask);
+ }
+ if ((mask != rmask) && count)
+ {
+ clientErrorValue = *pixels | mask;
+ result = BadValue;
+ }
+ /* XXX should worry about removing any RT_CMAPENTRY resource */
+ return (result);
+}
+
+/**
+ * Helper for FreeColors -- frees all combinations of *newpixels and mask bits
+ * which the client has allocated in channel colormap cells of pmap.
+ * doesn't change newpixels if it doesn't need to
+ *
+ * \param pmap which colormap head
+ * \param color which sub-map, eg, RED, BLUE, PSEUDO
+ * \param npixIn number of pixels passed in
+ * \param ppixIn number of base pixels
+ * \param mask mask client gave us
+ */
+static int
+FreeCo (ColormapPtr pmap, int client, int color, int npixIn, Pixel *ppixIn, Pixel mask)
+{
+ Pixel *ppixClient, pixTest;
+ int npixClient, npixNew, npix;
+ Pixel bits, base, cmask, rgbbad;
+ Pixel *pptr, *cptr;
+ int n, zapped;
+ int errVal = Success;
+ int offset, numents;
+
+ if (npixIn == 0)
+ return (errVal);
+ bits = 0;
+ zapped = 0;
+ base = lowbit (mask);
+
+ switch(color)
+ {
+ case REDMAP:
+ cmask = pmap->pVisual->redMask;
+ rgbbad = ~RGBMASK(pmap->pVisual);
+ offset = pmap->pVisual->offsetRed;
+ numents = (cmask >> offset) + 1;
+ ppixClient = pmap->clientPixelsRed[client];
+ npixClient = pmap->numPixelsRed[client];
+ break;
+ case GREENMAP:
+ cmask = pmap->pVisual->greenMask;
+ rgbbad = ~RGBMASK(pmap->pVisual);
+ offset = pmap->pVisual->offsetGreen;
+ numents = (cmask >> offset) + 1;
+ ppixClient = pmap->clientPixelsGreen[client];
+ npixClient = pmap->numPixelsGreen[client];
+ break;
+ case BLUEMAP:
+ cmask = pmap->pVisual->blueMask;
+ rgbbad = ~RGBMASK(pmap->pVisual);
+ offset = pmap->pVisual->offsetBlue;
+ numents = (cmask >> offset) + 1;
+ ppixClient = pmap->clientPixelsBlue[client];
+ npixClient = pmap->numPixelsBlue[client];
+ break;
+ default: /* so compiler can see that everything gets initialized */
+ case PSEUDOMAP:
+ cmask = ~((Pixel)0);
+ rgbbad = 0;
+ offset = 0;
+ numents = pmap->pVisual->ColormapEntries;
+ ppixClient = pmap->clientPixelsRed[client];
+ npixClient = pmap->numPixelsRed[client];
+ break;
+ }
+
+
+ /* zap all pixels which match */
+ while (1)
+ {
+ /* go through pixel list */
+ for (pptr = ppixIn, n = npixIn; --n >= 0; pptr++)
+ {
+ pixTest = ((*pptr | bits) & cmask) >> offset;
+ if ((pixTest >= numents) || (*pptr & rgbbad))
+ {
+ clientErrorValue = *pptr | bits;
+ errVal = BadValue;
+ continue;
+ }
+
+ /* find match in client list */
+ for (cptr = ppixClient, npix = npixClient;
+ --npix >= 0 && *cptr != pixTest;
+ cptr++) ;
+
+ if (npix >= 0)
+ {
+ if (pmap->class & DynamicClass)
+ {
+ FreeCell(pmap, pixTest, color);
+ }
+ *cptr = ~((Pixel)0);
+ zapped++;
+ }
+ else
+ errVal = BadAccess;
+ }
+ /* generate next bits value */
+ GetNextBitsOrBreak(bits, mask, base);
+ }
+
+ /* delete freed pixels from client pixel list */
+ if (zapped)
+ {
+ npixNew = npixClient - zapped;
+ if (npixNew)
+ {
+ /* Since the list can only get smaller, we can do a copy in
+ * place and then realloc to a smaller size */
+ pptr = cptr = ppixClient;
+
+ /* If we have all the new pixels, we don't have to examine the
+ * rest of the old ones */
+ for(npix = 0; npix < npixNew; cptr++)
+ {
+ if (*cptr != ~((Pixel)0))
+ {
+ *pptr++ = *cptr;
+ npix++;
+ }
+ }
+ pptr = (Pixel *)xrealloc(ppixClient, npixNew * sizeof(Pixel));
+ if (pptr)
+ ppixClient = pptr;
+ npixClient = npixNew;
+ }
+ else
+ {
+ npixClient = 0;
+ xfree(ppixClient);
+ ppixClient = (Pixel *)NULL;
+ }
+ switch(color)
+ {
+ case PSEUDOMAP:
+ case REDMAP:
+ pmap->clientPixelsRed[client] = ppixClient;
+ pmap->numPixelsRed[client] = npixClient;
+ break;
+ case GREENMAP:
+ pmap->clientPixelsGreen[client] = ppixClient;
+ pmap->numPixelsGreen[client] = npixClient;
+ break;
+ case BLUEMAP:
+ pmap->clientPixelsBlue[client] = ppixClient;
+ pmap->numPixelsBlue[client] = npixClient;
+ break;
+ }
+ }
+ return (errVal);
+}
+
+
+
+/* Redefine color values */
+int
+StoreColors (ColormapPtr pmap, int count, xColorItem *defs)
+{
+ Pixel pix;
+ xColorItem *pdef;
+ EntryPtr pent, pentT, pentLast;
+ VisualPtr pVisual;
+ SHAREDCOLOR *pred, *pgreen, *pblue;
+ int n, ChgRed, ChgGreen, ChgBlue, idef;
+ int class, errVal = Success;
+ int ok;
+
+
+ class = pmap->class;
+ if(!(class & DynamicClass) && !(pmap->flags & BeingCreated))
+ {
+ return(BadAccess);
+ }
+ pVisual = pmap->pVisual;
+
+ idef = 0;
+ if((class | DynamicClass) == DirectColor)
+ {
+ int numred, numgreen, numblue;
+ Pixel rgbbad;
+
+ numred = NUMRED(pVisual);
+ numgreen = NUMGREEN(pVisual);
+ numblue = NUMBLUE(pVisual);
+ rgbbad = ~RGBMASK(pVisual);
+ for (pdef = defs, n = 0; n < count; pdef++, n++)
+ {
+ ok = TRUE;
+ (*pmap->pScreen->ResolveColor)
+ (&pdef->red, &pdef->green, &pdef->blue, pmap->pVisual);
+
+ if (pdef->pixel & rgbbad)
+ {
+ errVal = BadValue;
+ clientErrorValue = pdef->pixel;
+ continue;
+ }
+ pix = (pdef->pixel & pVisual->redMask) >> pVisual->offsetRed;
+ if (pix >= numred)
+ {
+ errVal = BadValue;
+ ok = FALSE;
+ }
+ else if (pmap->red[pix].refcnt != AllocPrivate)
+ {
+ errVal = BadAccess;
+ ok = FALSE;
+ }
+ else if (pdef->flags & DoRed)
+ {
+ pmap->red[pix].co.local.red = pdef->red;
+ }
+ else
+ {
+ pdef->red = pmap->red[pix].co.local.red;
+ }
+
+ pix = (pdef->pixel & pVisual->greenMask) >> pVisual->offsetGreen;
+ if (pix >= numgreen)
+ {
+ errVal = BadValue;
+ ok = FALSE;
+ }
+ else if (pmap->green[pix].refcnt != AllocPrivate)
+ {
+ errVal = BadAccess;
+ ok = FALSE;
+ }
+ else if (pdef->flags & DoGreen)
+ {
+ pmap->green[pix].co.local.green = pdef->green;
+ }
+ else
+ {
+ pdef->green = pmap->green[pix].co.local.green;
+ }
+
+ pix = (pdef->pixel & pVisual->blueMask) >> pVisual->offsetBlue;
+ if (pix >= numblue)
+ {
+ errVal = BadValue;
+ ok = FALSE;
+ }
+ else if (pmap->blue[pix].refcnt != AllocPrivate)
+ {
+ errVal = BadAccess;
+ ok = FALSE;
+ }
+ else if (pdef->flags & DoBlue)
+ {
+ pmap->blue[pix].co.local.blue = pdef->blue;
+ }
+ else
+ {
+ pdef->blue = pmap->blue[pix].co.local.blue;
+ }
+ /* If this is an o.k. entry, then it gets added to the list
+ * to be sent to the hardware. If not, skip it. Once we've
+ * skipped one, we have to copy all the others.
+ */
+ if(ok)
+ {
+ if(idef != n)
+ defs[idef] = defs[n];
+ idef++;
+ } else
+ clientErrorValue = pdef->pixel;
+ }
+ }
+ else
+ {
+ for (pdef = defs, n = 0; n < count; pdef++, n++)
+ {
+
+ ok = TRUE;
+ if (pdef->pixel >= pVisual->ColormapEntries)
+ {
+ clientErrorValue = pdef->pixel;
+ errVal = BadValue;
+ ok = FALSE;
+ }
+ else if (pmap->red[pdef->pixel].refcnt != AllocPrivate)
+ {
+ errVal = BadAccess;
+ ok = FALSE;
+ }
+
+ /* If this is an o.k. entry, then it gets added to the list
+ * to be sent to the hardware. If not, skip it. Once we've
+ * skipped one, we have to copy all the others.
+ */
+ if(ok)
+ {
+ if(idef != n)
+ defs[idef] = defs[n];
+ idef++;
+ }
+ else
+ continue;
+
+ (*pmap->pScreen->ResolveColor)
+ (&pdef->red, &pdef->green, &pdef->blue, pmap->pVisual);
+
+ pent = &pmap->red[pdef->pixel];
+
+ if(pdef->flags & DoRed)
+ {
+ if(pent->fShared)
+ {
+ pent->co.shco.red->color = pdef->red;
+ if (pent->co.shco.red->refcnt > 1)
+ ok = FALSE;
+ }
+ else
+ pent->co.local.red = pdef->red;
+ }
+ else
+ {
+ if(pent->fShared)
+ pdef->red = pent->co.shco.red->color;
+ else
+ pdef->red = pent->co.local.red;
+ }
+ if(pdef->flags & DoGreen)
+ {
+ if(pent->fShared)
+ {
+ pent->co.shco.green->color = pdef->green;
+ if (pent->co.shco.green->refcnt > 1)
+ ok = FALSE;
+ }
+ else
+ pent->co.local.green = pdef->green;
+ }
+ else
+ {
+ if(pent->fShared)
+ pdef->green = pent->co.shco.green->color;
+ else
+ pdef->green = pent->co.local.green;
+ }
+ if(pdef->flags & DoBlue)
+ {
+ if(pent->fShared)
+ {
+ pent->co.shco.blue->color = pdef->blue;
+ if (pent->co.shco.blue->refcnt > 1)
+ ok = FALSE;
+ }
+ else
+ pent->co.local.blue = pdef->blue;
+ }
+ else
+ {
+ if(pent->fShared)
+ pdef->blue = pent->co.shco.blue->color;
+ else
+ pdef->blue = pent->co.local.blue;
+ }
+
+ if(!ok)
+ {
+ /* have to run through the colormap and change anybody who
+ * shares this value */
+ pred = pent->co.shco.red;
+ pgreen = pent->co.shco.green;
+ pblue = pent->co.shco.blue;
+ ChgRed = pdef->flags & DoRed;
+ ChgGreen = pdef->flags & DoGreen;
+ ChgBlue = pdef->flags & DoBlue;
+ pentLast = pmap->red + pVisual->ColormapEntries;
+
+ for(pentT = pmap->red; pentT < pentLast; pentT++)
+ {
+ if(pentT->fShared && (pentT != pent))
+ {
+ xColorItem defChg;
+
+ /* There are, alas, devices in this world too dumb
+ * to read their own hardware colormaps. Sick, but
+ * true. So we're going to be really nice and load
+ * the xColorItem with the proper value for all the
+ * fields. We will only set the flags for those
+ * fields that actually change. Smart devices can
+ * arrange to change only those fields. Dumb devices
+ * can rest assured that we have provided for them,
+ * and can change all three fields */
+
+ defChg.flags = 0;
+ if(ChgRed && pentT->co.shco.red == pred)
+ {
+ defChg.flags |= DoRed;
+ }
+ if(ChgGreen && pentT->co.shco.green == pgreen)
+ {
+ defChg.flags |= DoGreen;
+ }
+ if(ChgBlue && pentT->co.shco.blue == pblue)
+ {
+ defChg.flags |= DoBlue;
+ }
+ if(defChg.flags != 0)
+ {
+ defChg.pixel = pentT - pmap->red;
+ defChg.red = pentT->co.shco.red->color;
+ defChg.green = pentT->co.shco.green->color;
+ defChg.blue = pentT->co.shco.blue->color;
+ (*pmap->pScreen->StoreColors) (pmap, 1, &defChg);
+ }
+ }
+ }
+
+ }
+ }
+ }
+ /* Note that we use idef, the count of acceptable entries, and not
+ * count, the count of proposed entries */
+ if (idef != 0)
+ ( *pmap->pScreen->StoreColors) (pmap, idef, defs);
+ return (errVal);
+}
+
+int
+IsMapInstalled(Colormap map, WindowPtr pWin)
+{
+ Colormap *pmaps;
+ int imap, nummaps, found;
+
+ pmaps = xalloc(pWin->drawable.pScreen->maxInstalledCmaps*sizeof(Colormap));
+ if(!pmaps)
+ return(FALSE);
+ nummaps = (*pWin->drawable.pScreen->ListInstalledColormaps)
+ (pWin->drawable.pScreen, pmaps);
+ found = FALSE;
+ for(imap = 0; imap < nummaps; imap++)
+ {
+ if(pmaps[imap] == map)
+ {
+ found = TRUE;
+ break;
+ }
+ }
+ xfree(pmaps);
+ return (found);
+}
+
+struct colormap_lookup_data {
+ ScreenPtr pScreen;
+ VisualPtr visuals;
+};
+
+static void _colormap_find_resource(pointer value, XID id,
+ pointer cdata)
+{
+ struct colormap_lookup_data *cmap_data = cdata;
+ VisualPtr visuals = cmap_data->visuals;
+ ScreenPtr pScreen = cmap_data->pScreen;
+ ColormapPtr cmap = value;
+ int j;
+
+ j = cmap->pVisual - pScreen->visuals;
+ cmap->pVisual = &visuals[j];
+}
+
+/* something has realloced the visuals, instead of breaking
+ ABI fix it up here - glx and compsite did this wrong */
+Bool
+ResizeVisualArray(ScreenPtr pScreen, int new_visual_count,
+ DepthPtr depth)
+{
+ struct colormap_lookup_data cdata;
+ int numVisuals;
+ VisualPtr visuals;
+ XID *vids, vid;
+ int first_new_vid, first_new_visual, i;
+
+ first_new_vid = depth->numVids;
+ first_new_visual = pScreen->numVisuals;
+
+ vids = xrealloc(depth->vids, (depth->numVids + new_visual_count) * sizeof(XID));
+ if (!vids)
+ return FALSE;
+
+ /* its realloced now no going back if we fail the next one */
+ depth->vids = vids;
+
+ numVisuals = pScreen->numVisuals + new_visual_count;
+ visuals = xrealloc(pScreen->visuals, numVisuals * sizeof(VisualRec));
+ if (!visuals) {
+ return FALSE;
+ }
+
+ cdata.visuals = visuals;
+ cdata.pScreen = pScreen;
+ FindClientResourcesByType(serverClient, RT_COLORMAP, _colormap_find_resource, &cdata);
+
+ pScreen->visuals = visuals;
+
+ for (i = 0; i < new_visual_count; i++) {
+ vid = FakeClientID(0);
+ pScreen->visuals[first_new_visual + i].vid = vid;
+ vids[first_new_vid + i] = vid;
+ }
+
+ depth->numVids += new_visual_count;
+ pScreen->numVisuals += new_visual_count;
+
+ return TRUE;
+}
diff --git a/xorg-server/dix/eventconvert.c b/xorg-server/dix/eventconvert.c index d91ba67c2..e25f3ee97 100644 --- a/xorg-server/dix/eventconvert.c +++ b/xorg-server/dix/eventconvert.c @@ -352,17 +352,17 @@ getValuatorEvents(DeviceEvent *ev, deviceValuator *xv) xv->device_state = state; switch (xv->num_valuators) { case 6: - xv->valuator5 = ev->valuators.data[i + 5]; + xv->valuator5 = ev->valuators.data[xv->first_valuator + 5]; case 5: - xv->valuator4 = ev->valuators.data[i + 4]; + xv->valuator4 = ev->valuators.data[xv->first_valuator + 4]; case 4: - xv->valuator3 = ev->valuators.data[i + 3]; + xv->valuator3 = ev->valuators.data[xv->first_valuator + 3]; case 3: - xv->valuator2 = ev->valuators.data[i + 2]; + xv->valuator2 = ev->valuators.data[xv->first_valuator + 2]; case 2: - xv->valuator1 = ev->valuators.data[i + 1]; + xv->valuator1 = ev->valuators.data[xv->first_valuator + 1]; case 1: - xv->valuator0 = ev->valuators.data[i + 0]; + xv->valuator0 = ev->valuators.data[xv->first_valuator + 0]; } if (i + 6 < num_valuators) diff --git a/xorg-server/dix/events.c b/xorg-server/dix/events.c index a79cf6d2f..d60b8a534 100644 --- a/xorg-server/dix/events.c +++ b/xorg-server/dix/events.c @@ -4414,10 +4414,12 @@ DeviceEnterLeaveEvent( filter, grab); } else { if (!GetWindowXI2Mask(mouse, pWin, (xEvent*)event)) - return; + goto out; DeliverEventsToWindow(mouse, pWin, (xEvent*)event, 1, filter, NullGrab); } + +out: xfree(event); } diff --git a/xorg-server/dix/getevents.c b/xorg-server/dix/getevents.c index ea6aa1376..eb1563aa4 100644 --- a/xorg-server/dix/getevents.c +++ b/xorg-server/dix/getevents.c @@ -586,12 +586,13 @@ GetMaximumEventsNum(void) { static void
clipAxis(DeviceIntPtr pDev, int axisNum, int *val)
{
- AxisInfoPtr axis = pDev->valuator->axes + axisNum;
- /* InitValuatoraAxisStruct ensures that (min < max). */
+ AxisInfoPtr axis;
if (axisNum >= pDev->valuator->numAxes)
return;
+ axis = pDev->valuator->axes + axisNum;
+
/* If a value range is defined, clip. If not, do nothing */
if (axis->max_value <= axis->min_value)
return;
@@ -788,6 +789,19 @@ positionSprite(DeviceIntPtr dev, int *x, int *y, float x_frac, float y_frac, *screeny_frac = dev->last.remainder[1];
}
+ /* Hit the left screen edge? */
+ if (*screenx <= 0 && *screenx_frac < 0.0f)
+ {
+ *screenx_frac = 0.0f;
+ x_frac = 0.0f;
+ }
+ if (*screeny <= 0 && *screeny_frac < 0.0f)
+ {
+ *screeny_frac = 0.0f;
+ y_frac = 0.0f;
+ }
+
+
old_screenx = *screenx;
old_screeny = *screeny;
/* This takes care of crossing screens for us, as well as clipping
diff --git a/xorg-server/exa/exa.c b/xorg-server/exa/exa.c index 483e3b4eb..e264d440c 100644 --- a/xorg-server/exa/exa.c +++ b/xorg-server/exa/exa.c @@ -286,11 +286,10 @@ exaGetOffscreenPixmap (DrawablePtr pDrawable, int *xp, int *yp) * Returns TRUE if pixmap can be accessed offscreen. */ Bool -ExaDoPrepareAccess(DrawablePtr pDrawable, int index) +ExaDoPrepareAccess(PixmapPtr pPixmap, int index) { - ScreenPtr pScreen = pDrawable->pScreen; + ScreenPtr pScreen = pPixmap->drawable.pScreen; ExaScreenPriv (pScreen); - PixmapPtr pPixmap = exaGetDrawablePixmap (pDrawable); ExaPixmapPriv(pPixmap); Bool offscreen; int i; @@ -324,7 +323,7 @@ ExaDoPrepareAccess(DrawablePtr pDrawable, int index) offscreen = exaPixmapIsOffscreen(pPixmap); - if (offscreen) + if (offscreen && pExaPixmap->fb_ptr) pPixmap->devPrivate.ptr = pExaPixmap->fb_ptr; else pPixmap->devPrivate.ptr = pExaPixmap->sys_ptr; @@ -333,20 +332,10 @@ ExaDoPrepareAccess(DrawablePtr pDrawable, int index) pExaScr->access[index].pixmap = pPixmap; pExaScr->access[index].count = 1; - if (!offscreen) { - /* Do we need to allocate our system buffer? */ - if ((pExaScr->info->flags & EXA_HANDLES_PIXMAPS) && (pExaScr->info->flags & EXA_MIXED_PIXMAPS)) { - if (!pExaPixmap->sys_ptr && !exaPixmapIsPinned(pPixmap)) { - pExaPixmap->sys_ptr = malloc(pExaPixmap->sys_pitch * pDrawable->height); - if (!pExaPixmap->sys_ptr) - FatalError("EXA: malloc failed for size %d bytes\n", pExaPixmap->sys_pitch * pDrawable->height); - pPixmap->devPrivate.ptr = pExaPixmap->sys_ptr; - } - } + if (!offscreen) return FALSE; - } - exaWaitSync (pDrawable->pScreen); + exaWaitSync (pScreen); if (pExaScr->info->PrepareAccess == NULL) return TRUE; @@ -360,7 +349,8 @@ ExaDoPrepareAccess(DrawablePtr pDrawable, int index) } if (!(*pExaScr->info->PrepareAccess) (pPixmap, index)) { - if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED) + if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED && + !(pExaScr->info->flags & EXA_MIXED_PIXMAPS)) FatalError("Driver failed PrepareAccess on a pinned pixmap.\n"); exaMoveOutPixmap (pPixmap); @@ -370,31 +360,6 @@ ExaDoPrepareAccess(DrawablePtr pDrawable, int index) return TRUE; } -void -exaPrepareAccessReg(DrawablePtr pDrawable, int index, RegionPtr pReg) -{ - PixmapPtr pPixmap = exaGetDrawablePixmap (pDrawable); - ExaScreenPriv(pPixmap->drawable.pScreen); - - if (pExaScr->do_migration) { - ExaMigrationRec pixmaps[1]; - - if (index == EXA_PREPARE_DEST || index == EXA_PREPARE_AUX_DEST) { - pixmaps[0].as_dst = TRUE; - pixmaps[0].as_src = FALSE; - } else { - pixmaps[0].as_dst = FALSE; - pixmaps[0].as_src = TRUE; - } - pixmaps[0].pPix = pPixmap; - pixmaps[0].pReg = pReg; - - exaDoMigration(pixmaps, 1, FALSE); - } - - ExaDoPrepareAccess(pDrawable, index); -} - /** * exaPrepareAccess() is EXA's wrapper for the driver's PrepareAccess() handler. * @@ -404,7 +369,13 @@ exaPrepareAccessReg(DrawablePtr pDrawable, int index, RegionPtr pReg) void exaPrepareAccess(DrawablePtr pDrawable, int index) { - exaPrepareAccessReg(pDrawable, index, NULL); + PixmapPtr pPixmap = exaGetDrawablePixmap(pDrawable); + ExaScreenPriv(pDrawable->pScreen); + + if (pExaScr->prepare_access_reg) + pExaScr->prepare_access_reg(pPixmap, index, NULL); + else + (void)ExaDoPrepareAccess(pPixmap, index); } /** @@ -432,7 +403,6 @@ exaFinishAccess(DrawablePtr pDrawable, int index) if (pExaScr->access[i].pixmap == pPixmap) { if (--pExaScr->access[i].count > 0) return; - index = i; break; } } @@ -442,25 +412,25 @@ exaFinishAccess(DrawablePtr pDrawable, int index) EXA_FatalErrorDebug(("EXA bug: FinishAccess called without PrepareAccess for pixmap 0x%p.\n", pPixmap)); - pExaScr->access[index].pixmap = NULL; + pExaScr->access[i].pixmap = NULL; /* We always hide the devPrivate.ptr. */ pPixmap->devPrivate.ptr = NULL; - if (pExaScr->info->FinishAccess == NULL) - return; + if (pExaScr->finish_access) + pExaScr->finish_access(pPixmap, index); - if (!exaPixmapIsOffscreen (pPixmap)) + if (!pExaScr->info->FinishAccess || !exaPixmapIsOffscreen(pPixmap)) return; - if (index >= EXA_PREPARE_AUX_DEST && + if (i >= EXA_PREPARE_AUX_DEST && !(pExaScr->info->flags & EXA_SUPPORTS_PREPARE_AUX)) { ErrorF("EXA bug: Trying to call driver FinishAccess hook with " "unsupported index EXA_PREPARE_AUX*\n"); return; } - (*pExaScr->info->FinishAccess) (pPixmap, index); + (*pExaScr->info->FinishAccess) (pPixmap, i); } /** @@ -537,7 +507,7 @@ exaCreatePixmapWithPrepare(ScreenPtr pScreen, int w, int h, int depth, * For EXA_HANDLES_PIXMAPS the driver will handle whatever is needed. * We want to signal that the pixmaps will be used as destination. */ - ExaDoPrepareAccess(&pPixmap->drawable, EXA_PREPARE_AUX_DEST); + ExaDoPrepareAccess(pPixmap, EXA_PREPARE_AUX_DEST); return pPixmap; } @@ -1071,6 +1041,8 @@ exaDriverInit (ScreenPtr pScreen, pExaScr->pixmap_is_offscreen = exaPixmapIsOffscreen_mixed; pExaScr->do_move_in_pixmap = exaMoveInPixmap_mixed; pExaScr->do_move_out_pixmap = NULL; + pExaScr->prepare_access_reg = exaPrepareAccessReg_mixed; + pExaScr->finish_access = exaFinishAccess_mixed; } else { wrap(pExaScr, pScreen, CreatePixmap, exaCreatePixmap_driver); wrap(pExaScr, pScreen, DestroyPixmap, exaDestroyPixmap_driver); @@ -1079,6 +1051,8 @@ exaDriverInit (ScreenPtr pScreen, pExaScr->pixmap_is_offscreen = exaPixmapIsOffscreen_driver; pExaScr->do_move_in_pixmap = NULL; pExaScr->do_move_out_pixmap = NULL; + pExaScr->prepare_access_reg = NULL; + pExaScr->finish_access = NULL; } } else { wrap(pExaScr, pScreen, CreatePixmap, exaCreatePixmap_classic); @@ -1088,6 +1062,8 @@ exaDriverInit (ScreenPtr pScreen, pExaScr->pixmap_is_offscreen = exaPixmapIsOffscreen_classic; pExaScr->do_move_in_pixmap = exaMoveInPixmap_classic; pExaScr->do_move_out_pixmap = exaMoveOutPixmap_classic; + pExaScr->prepare_access_reg = exaPrepareAccessReg_classic; + pExaScr->finish_access = NULL; } if (!(pExaScr->info->flags & EXA_HANDLES_PIXMAPS)) { LogMessage(X_INFO, "EXA(%d): Offscreen pixmap area of %lu bytes\n", diff --git a/xorg-server/exa/exa_glyphs.c b/xorg-server/exa/exa_glyphs.c index d621ccf76..bf097c32f 100644 --- a/xorg-server/exa/exa_glyphs.c +++ b/xorg-server/exa/exa_glyphs.c @@ -701,7 +701,6 @@ exaGlyphs (CARD8 op, GlyphListPtr list, GlyphPtr *glyphs) { - PicturePtr pPicture; PixmapPtr pMaskPixmap = 0; PicturePtr pMask = NULL; ScreenPtr pScreen = pDst->pDrawable->pScreen; @@ -803,7 +802,6 @@ exaGlyphs (CARD8 op, while (n--) { glyph = *glyphs++; - pPicture = GlyphPicture (glyph)[pScreen->myNum]; if (glyph->info.width > 0 && glyph->info.height > 0) { diff --git a/xorg-server/exa/exa_migration_classic.c b/xorg-server/exa/exa_migration_classic.c index e096c1eac..b6671f069 100644 --- a/xorg-server/exa/exa_migration_classic.c +++ b/xorg-server/exa/exa_migration_classic.c @@ -1,720 +1,742 @@ -/* - * Copyright © 2006 Intel Corporation - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice and this permission notice (including the next - * paragraph) shall be included in all copies or substantial portions of the - * Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR - * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER - * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, - * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * Authors: - * Eric Anholt <eric@anholt.net> - * Michel Dänzer <michel@tungstengraphics.com> - * - */ - -#ifdef HAVE_DIX_CONFIG_H -#include <dix-config.h> -#endif - -#include <string.h> - -#include "exa_priv.h" -#include "exa.h" - -#if DEBUG_MIGRATE -#define DBG_MIGRATE(a) ErrorF a -#else -#define DBG_MIGRATE(a) -#endif - -/** - * The fallback path for UTS/DFS failing is to just memcpy. exaCopyDirtyToSys - * and exaCopyDirtyToFb both needed to do this loop. - */ -static void -exaMemcpyBox (PixmapPtr pPixmap, BoxPtr pbox, CARD8 *src, int src_pitch, - CARD8 *dst, int dst_pitch) - { - int i, cpp = pPixmap->drawable.bitsPerPixel / 8; - int bytes = (pbox->x2 - pbox->x1) * cpp; - - src += pbox->y1 * src_pitch + pbox->x1 * cpp; - dst += pbox->y1 * dst_pitch + pbox->x1 * cpp; - - for (i = pbox->y2 - pbox->y1; i; i--) { - memcpy (dst, src, bytes); - src += src_pitch; - dst += dst_pitch; - } -} - -/** - * Returns TRUE if the pixmap is dirty (has been modified in its current - * location compared to the other), or lacks a private for tracking - * dirtiness. - */ -static Bool -exaPixmapIsDirty (PixmapPtr pPix) -{ - ExaPixmapPriv (pPix); - - if (pExaPixmap == NULL) - EXA_FatalErrorDebugWithRet(("EXA bug: exaPixmapIsDirty was called on a non-exa pixmap.\n"), TRUE); - - return REGION_NOTEMPTY (pScreen, DamageRegion(pExaPixmap->pDamage)) || - !REGION_EQUAL(pScreen, &pExaPixmap->validSys, &pExaPixmap->validFB); -} - -/** - * Returns TRUE if the pixmap is either pinned in FB, or has a sufficient score - * to be considered "should be in framebuffer". That's just anything that has - * had more acceleration than fallbacks, or has no score yet. - * - * Only valid if using a migration scheme that tracks score. - */ -static Bool -exaPixmapShouldBeInFB (PixmapPtr pPix) -{ - ExaPixmapPriv (pPix); - - if (exaPixmapIsPinned (pPix)) - return TRUE; - - return pExaPixmap->score >= 0; -} - -/** - * If the pixmap is currently dirty, this copies at least the dirty area from - * FB to system or vice versa. Both areas must be allocated. - */ -static void -exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc, - Bool (*transfer) (PixmapPtr pPix, int x, int y, int w, int h, - char *sys, int sys_pitch), CARD8 *fallback_src, - CARD8 *fallback_dst, int fallback_srcpitch, int fallback_dstpitch, - int fallback_index, void (*sync) (ScreenPtr pScreen)) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaPixmapPriv (pPixmap); - RegionPtr damage = DamageRegion (pExaPixmap->pDamage); - RegionRec CopyReg; - Bool save_offscreen; - int save_pitch; - BoxPtr pBox; - int nbox; - Bool access_prepared = FALSE; - Bool need_sync = FALSE; - - /* Damaged bits are valid in current copy but invalid in other one */ - if (exaPixmapIsOffscreen(pPixmap)) { - REGION_UNION(pScreen, &pExaPixmap->validFB, &pExaPixmap->validFB, - damage); - REGION_SUBTRACT(pScreen, &pExaPixmap->validSys, &pExaPixmap->validSys, - damage); - } else { - REGION_UNION(pScreen, &pExaPixmap->validSys, &pExaPixmap->validSys, - damage); - REGION_SUBTRACT(pScreen, &pExaPixmap->validFB, &pExaPixmap->validFB, - damage); - } - - REGION_EMPTY(pScreen, damage); - - /* Copy bits valid in source but not in destination */ - REGION_NULL(pScreen, &CopyReg); - REGION_SUBTRACT(pScreen, &CopyReg, pValidSrc, pValidDst); - - if (migrate->as_dst) { - ExaScreenPriv (pPixmap->drawable.pScreen); - - /* XXX: The pending damage region will be marked as damaged after the - * operation, so it should serve as an upper bound for the region that - * needs to be synchronized for the operation. Unfortunately, this - * causes corruption in some cases, e.g. when starting compiz. See - * https://bugs.freedesktop.org/show_bug.cgi?id=12916 . - */ - if (pExaScr->optimize_migration) { - RegionPtr pending_damage = DamagePendingRegion(pExaPixmap->pDamage); - -#if DEBUG_MIGRATE - if (REGION_NIL(pending_damage)) { - static Bool firsttime = TRUE; - - if (firsttime) { - ErrorF("%s: Pending damage region empty!\n", __func__); - firsttime = FALSE; - } - } -#endif - - /* Try to prevent destination valid region from growing too many - * rects by filling it up to the extents of the union of the - * destination valid region and the pending damage region. - */ - if (REGION_NUM_RECTS(pValidDst) > 10) { - BoxRec box; - BoxPtr pValidExt, pDamageExt; - RegionRec closure; - - pValidExt = REGION_EXTENTS(pScreen, pValidDst); - pDamageExt = REGION_EXTENTS(pScreen, pending_damage); - - box.x1 = min(pValidExt->x1, pDamageExt->x1); - box.y1 = min(pValidExt->y1, pDamageExt->y1); - box.x2 = max(pValidExt->x2, pDamageExt->x2); - box.y2 = max(pValidExt->y2, pDamageExt->y2); - - REGION_INIT(pScreen, &closure, &box, 0); - REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, &closure); - } else - REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, pending_damage); - } - - /* The caller may provide a region to be subtracted from the calculated - * dirty region. This is to avoid migration of bits that don't - * contribute to the result of the operation. - */ - if (migrate->pReg) - REGION_SUBTRACT(pScreen, &CopyReg, &CopyReg, migrate->pReg); - } else { - /* The caller may restrict the region to be migrated for source pixmaps - * to what's relevant for the operation. - */ - if (migrate->pReg) - REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, migrate->pReg); - } - - pBox = REGION_RECTS(&CopyReg); - nbox = REGION_NUM_RECTS(&CopyReg); - - save_offscreen = pExaPixmap->offscreen; - save_pitch = pPixmap->devKind; - pExaPixmap->offscreen = TRUE; - pPixmap->devKind = pExaPixmap->fb_pitch; - - while (nbox--) { - pBox->x1 = max(pBox->x1, 0); - pBox->y1 = max(pBox->y1, 0); - pBox->x2 = min(pBox->x2, pPixmap->drawable.width); - pBox->y2 = min(pBox->y2, pPixmap->drawable.height); - - if (pBox->x1 >= pBox->x2 || pBox->y1 >= pBox->y2) - continue; - - if (!transfer || !transfer (pPixmap, - pBox->x1, pBox->y1, - pBox->x2 - pBox->x1, - pBox->y2 - pBox->y1, - (char *) (pExaPixmap->sys_ptr - + pBox->y1 * pExaPixmap->sys_pitch - + pBox->x1 * pPixmap->drawable.bitsPerPixel / 8), - pExaPixmap->sys_pitch)) - { - if (!access_prepared) { - ExaDoPrepareAccess(&pPixmap->drawable, fallback_index); - access_prepared = TRUE; - } - exaMemcpyBox (pPixmap, pBox, - fallback_src, fallback_srcpitch, - fallback_dst, fallback_dstpitch); - } else - need_sync = TRUE; - - pBox++; - } - - if (access_prepared) - exaFinishAccess(&pPixmap->drawable, fallback_index); - else if (need_sync && sync) - sync (pPixmap->drawable.pScreen); - - pExaPixmap->offscreen = save_offscreen; - pPixmap->devKind = save_pitch; - - /* Try to prevent source valid region from growing too many rects by - * removing parts of it which are also in the destination valid region. - * Removing anything beyond that would lead to data loss. - */ - if (REGION_NUM_RECTS(pValidSrc) > 20) - REGION_SUBTRACT(pScreen, pValidSrc, pValidSrc, pValidDst); - - /* The copied bits are now valid in destination */ - REGION_UNION(pScreen, pValidDst, pValidDst, &CopyReg); - - REGION_UNINIT(pScreen, &CopyReg); -} - -/** - * If the pixmap is currently dirty, this copies at least the dirty area from - * the framebuffer memory copy to the system memory copy. Both areas must be - * allocated. - */ -static void -exaCopyDirtyToSys (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaScreenPriv (pPixmap->drawable.pScreen); - ExaPixmapPriv (pPixmap); - - exaCopyDirty(migrate, &pExaPixmap->validSys, &pExaPixmap->validFB, - pExaScr->info->DownloadFromScreen, pExaPixmap->fb_ptr, - pExaPixmap->sys_ptr, pExaPixmap->fb_pitch, - pExaPixmap->sys_pitch, EXA_PREPARE_SRC, exaWaitSync); -} - -/** - * If the pixmap is currently dirty, this copies at least the dirty area from - * the system memory copy to the framebuffer memory copy. Both areas must be - * allocated. - */ -static void -exaCopyDirtyToFb (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaScreenPriv (pPixmap->drawable.pScreen); - ExaPixmapPriv (pPixmap); - - exaCopyDirty(migrate, &pExaPixmap->validFB, &pExaPixmap->validSys, - pExaScr->info->UploadToScreen, pExaPixmap->sys_ptr, - pExaPixmap->fb_ptr, pExaPixmap->sys_pitch, - pExaPixmap->fb_pitch, EXA_PREPARE_DEST, NULL); -} - -/** - * Allocates a framebuffer copy of the pixmap if necessary, and then copies - * any necessary pixmap data into the framebuffer copy and points the pixmap at - * it. - * - * Note that when first allocated, a pixmap will have FALSE dirty flag. - * This is intentional because pixmap data starts out undefined. So if we move - * it in due to the first operation against it being accelerated, it will have - * undefined framebuffer contents that we didn't have to upload. If we do - * moveouts (and moveins) after the first movein, then we will only have to copy - * back and forth if the pixmap was written to after the last synchronization of - * the two copies. Then, at exaPixmapSave (when the framebuffer copy goes away) - * we mark the pixmap dirty, so that the next exaMoveInPixmap will actually move - * all the data, since it's almost surely all valid now. - */ -static void -exaDoMoveInPixmap (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ScreenPtr pScreen = pPixmap->drawable.pScreen; - ExaScreenPriv (pScreen); - ExaPixmapPriv (pPixmap); - - /* If we're VT-switched away, no touching card memory allowed. */ - if (pExaScr->swappedOut) - return; - - /* If we're not allowed to move, then fail. */ - if (exaPixmapIsPinned(pPixmap)) - return; - - /* Don't migrate in pixmaps which are less than 8bpp. This avoids a lot of - * fragility in EXA, and <8bpp is probably not used enough any more to care - * (at least, not in acceleratd paths). - */ - if (pPixmap->drawable.bitsPerPixel < 8) - return; - - if (pExaPixmap->accel_blocked) - return; - - if (pExaPixmap->area == NULL) { - pExaPixmap->area = - exaOffscreenAlloc (pScreen, pExaPixmap->fb_size, - pExaScr->info->pixmapOffsetAlign, FALSE, - exaPixmapSave, (pointer) pPixmap); - if (pExaPixmap->area == NULL) - return; - - pExaPixmap->fb_ptr = (CARD8 *) pExaScr->info->memoryBase + - pExaPixmap->area->offset; - } - - exaCopyDirtyToFb (migrate); - - if (exaPixmapIsOffscreen(pPixmap)) - return; - - DBG_MIGRATE (("-> %p (0x%x) (%dx%d) (%c)\n", pPixmap, - (ExaGetPixmapPriv(pPixmap)->area ? - ExaGetPixmapPriv(pPixmap)->area->offset : 0), - pPixmap->drawable.width, - pPixmap->drawable.height, - exaPixmapIsDirty(pPixmap) ? 'd' : 'c')); - - pExaPixmap->offscreen = TRUE; - - pPixmap->devKind = pExaPixmap->fb_pitch; - pPixmap->drawable.serialNumber = NEXT_SERIAL_NUMBER; -} - -void -exaMoveInPixmap_classic (PixmapPtr pPixmap) -{ - static ExaMigrationRec migrate = { FALSE, TRUE, - NULL, NULL }; - - migrate.pPix = pPixmap; - exaDoMoveInPixmap (&migrate); -} - -/** - * Switches the current active location of the pixmap to system memory, copying - * updated data out if necessary. - */ -static void -exaDoMoveOutPixmap (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaPixmapPriv (pPixmap); - - if (!pExaPixmap->area || exaPixmapIsPinned(pPixmap)) - return; - - exaCopyDirtyToSys (migrate); - - if (exaPixmapIsOffscreen(pPixmap)) { - - DBG_MIGRATE (("<- %p (%p) (%dx%d) (%c)\n", pPixmap, - (void*)(ExaGetPixmapPriv(pPixmap)->area ? - ExaGetPixmapPriv(pPixmap)->area->offset : 0), - pPixmap->drawable.width, - pPixmap->drawable.height, - exaPixmapIsDirty(pPixmap) ? 'd' : 'c')); - - pExaPixmap->offscreen = FALSE; - - pPixmap->devKind = pExaPixmap->sys_pitch; - pPixmap->drawable.serialNumber = NEXT_SERIAL_NUMBER; - } -} - -void -exaMoveOutPixmap_classic (PixmapPtr pPixmap) -{ - static ExaMigrationRec migrate = { FALSE, TRUE, - NULL, NULL }; - - migrate.pPix = pPixmap; - exaDoMoveOutPixmap (&migrate); -} - - -/** - * Copies out important pixmap data and removes references to framebuffer area. - * Called when the memory manager decides it's time to kick the pixmap out of - * framebuffer entirely. - */ -void -exaPixmapSave (ScreenPtr pScreen, ExaOffscreenArea *area) -{ - PixmapPtr pPixmap = area->privData; - ExaPixmapPriv(pPixmap); - - exaMoveOutPixmap(pPixmap); - - pExaPixmap->fb_ptr = NULL; - pExaPixmap->area = NULL; - - /* Mark all FB bits as invalid, so all valid system bits get copied to FB - * next time */ - REGION_EMPTY(pPixmap->drawable.pScreen, &pExaPixmap->validFB); -} - -/** - * For the "greedy" migration scheme, pushes the pixmap toward being located in - * framebuffer memory. - */ -static void -exaMigrateTowardFb (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaPixmapPriv (pPixmap); - - if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED) { - DBG_MIGRATE(("UseScreen: not migrating pinned pixmap %p\n", - (pointer)pPixmap)); - return; - } - - DBG_MIGRATE(("UseScreen %p score %d\n", - (pointer)pPixmap, pExaPixmap->score)); - - if (pExaPixmap->score == EXA_PIXMAP_SCORE_INIT) { - exaDoMoveInPixmap(migrate); - pExaPixmap->score = 0; - } - - if (pExaPixmap->score < EXA_PIXMAP_SCORE_MAX) - pExaPixmap->score++; - - if (pExaPixmap->score >= EXA_PIXMAP_SCORE_MOVE_IN && - !exaPixmapIsOffscreen(pPixmap)) - { - exaDoMoveInPixmap(migrate); - } - - if (exaPixmapIsOffscreen(pPixmap)) { - exaCopyDirtyToFb (migrate); - ExaOffscreenMarkUsed (pPixmap); - } else - exaCopyDirtyToSys (migrate); -} - -/** - * For the "greedy" migration scheme, pushes the pixmap toward being located in - * system memory. - */ -static void -exaMigrateTowardSys (ExaMigrationPtr migrate) -{ - PixmapPtr pPixmap = migrate->pPix; - ExaPixmapPriv (pPixmap); - - DBG_MIGRATE(("UseMem: %p score %d\n", (pointer)pPixmap, pExaPixmap->score)); - - if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED) - return; - - if (pExaPixmap->score == EXA_PIXMAP_SCORE_INIT) - pExaPixmap->score = 0; - - if (pExaPixmap->score > EXA_PIXMAP_SCORE_MIN) - pExaPixmap->score--; - - if (pExaPixmap->score <= EXA_PIXMAP_SCORE_MOVE_OUT && pExaPixmap->area) - exaDoMoveOutPixmap(migrate); - - if (exaPixmapIsOffscreen(pPixmap)) { - exaCopyDirtyToFb (migrate); - ExaOffscreenMarkUsed (pPixmap); - } else - exaCopyDirtyToSys (migrate); -} - -/** - * If the pixmap has both a framebuffer and system memory copy, this function - * asserts that both of them are the same. - */ -static Bool -exaAssertNotDirty (PixmapPtr pPixmap) -{ - ExaPixmapPriv (pPixmap); - CARD8 *dst, *src; - RegionRec ValidReg; - int dst_pitch, src_pitch, cpp, y, nbox, save_pitch; - BoxPtr pBox; - Bool ret = TRUE, save_offscreen; - - if (exaPixmapIsPinned(pPixmap) || pExaPixmap->area == NULL) - return ret; - - REGION_NULL(pScreen, &ValidReg); - REGION_INTERSECT(pScreen, &ValidReg, &pExaPixmap->validFB, - &pExaPixmap->validSys); - nbox = REGION_NUM_RECTS(&ValidReg); - - if (!nbox) - goto out; - - pBox = REGION_RECTS(&ValidReg); - - dst_pitch = pExaPixmap->sys_pitch; - src_pitch = pExaPixmap->fb_pitch; - cpp = pPixmap->drawable.bitsPerPixel / 8; - - save_offscreen = pExaPixmap->offscreen; - save_pitch = pPixmap->devKind; - pExaPixmap->offscreen = TRUE; - pPixmap->devKind = pExaPixmap->fb_pitch; - - if (!ExaDoPrepareAccess(&pPixmap->drawable, EXA_PREPARE_SRC)) - goto skip; - - while (nbox--) { - int rowbytes; - - pBox->x1 = max(pBox->x1, 0); - pBox->y1 = max(pBox->y1, 0); - pBox->x2 = min(pBox->x2, pPixmap->drawable.width); - pBox->y2 = min(pBox->y2, pPixmap->drawable.height); - - if (pBox->x1 >= pBox->x2 || pBox->y1 >= pBox->y2) - continue; - - rowbytes = (pBox->x2 - pBox->x1) * cpp; - src = (CARD8 *) pPixmap->devPrivate.ptr + pBox->y1 * src_pitch + pBox->x1 * cpp; - dst = pExaPixmap->sys_ptr + pBox->y1 * dst_pitch + pBox->x1 * cpp; - - for (y = pBox->y1; y < pBox->y2; - y++, src += src_pitch, dst += dst_pitch) { - if (memcmp(dst, src, rowbytes) != 0) { - ret = FALSE; - exaPixmapDirty(pPixmap, pBox->x1, pBox->y1, pBox->x2, - pBox->y2); - break; - } - } - } - -skip: - exaFinishAccess(&pPixmap->drawable, EXA_PREPARE_SRC); - - pExaPixmap->offscreen = save_offscreen; - pPixmap->devKind = save_pitch; - -out: - REGION_UNINIT(pScreen, &ValidReg); - return ret; -} - -/** - * Performs migration of the pixmaps according to the operation information - * provided in pixmaps and can_accel and the migration scheme chosen in the - * config file. - */ -void -exaDoMigration_classic (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel) -{ - ScreenPtr pScreen = pixmaps[0].pPix->drawable.pScreen; - ExaScreenPriv(pScreen); - int i, j; - - /* If this debugging flag is set, check each pixmap for whether it is marked - * as clean, and if so, actually check if that's the case. This should help - * catch issues with failing to mark a drawable as dirty. While it will - * catch them late (after the operation happened), it at least explains what - * went wrong, and instrumenting the code to find what operation happened - * to the pixmap last shouldn't be hard. - */ - if (pExaScr->checkDirtyCorrectness) { - for (i = 0; i < npixmaps; i++) { - if (!exaPixmapIsDirty (pixmaps[i].pPix) && - !exaAssertNotDirty (pixmaps[i].pPix)) - ErrorF("%s: Pixmap %d dirty but not marked as such!\n", __FUNCTION__, i); - } - } - /* If anything is pinned in system memory, we won't be able to - * accelerate. - */ - for (i = 0; i < npixmaps; i++) { - if (exaPixmapIsPinned (pixmaps[i].pPix) && - !exaPixmapIsOffscreen (pixmaps[i].pPix)) - { - EXA_FALLBACK(("Pixmap %p (%dx%d) pinned in sys\n", pixmaps[i].pPix, - pixmaps[i].pPix->drawable.width, - pixmaps[i].pPix->drawable.height)); - can_accel = FALSE; - break; - } - } - - if (pExaScr->migration == ExaMigrationSmart) { - /* If we've got something as a destination that we shouldn't cause to - * become newly dirtied, take the unaccelerated route. - */ - for (i = 0; i < npixmaps; i++) { - if (pixmaps[i].as_dst && !exaPixmapShouldBeInFB (pixmaps[i].pPix) && - !exaPixmapIsDirty (pixmaps[i].pPix)) - { - for (i = 0; i < npixmaps; i++) { - if (!exaPixmapIsDirty (pixmaps[i].pPix)) - exaDoMoveOutPixmap (pixmaps + i); - } - return; - } - } - - /* If we aren't going to accelerate, then we migrate everybody toward - * system memory, and kick out if it's free. - */ - if (!can_accel) { - for (i = 0; i < npixmaps; i++) { - exaMigrateTowardSys (pixmaps + i); - if (!exaPixmapIsDirty (pixmaps[i].pPix)) - exaDoMoveOutPixmap (pixmaps + i); - } - return; - } - - /* Finally, the acceleration path. Move them all in. */ - for (i = 0; i < npixmaps; i++) { - exaMigrateTowardFb(pixmaps + i); - exaDoMoveInPixmap(pixmaps + i); - } - } else if (pExaScr->migration == ExaMigrationGreedy) { - /* If we can't accelerate, either because the driver can't or because one of - * the pixmaps is pinned in system memory, then we migrate everybody toward - * system memory. - * - * We also migrate toward system if all pixmaps involved are currently in - * system memory -- this can mitigate thrashing when there are significantly - * more pixmaps active than would fit in memory. - * - * If not, then we migrate toward FB so that hopefully acceleration can - * happen. - */ - if (!can_accel) { - for (i = 0; i < npixmaps; i++) - exaMigrateTowardSys (pixmaps + i); - return; - } - - for (i = 0; i < npixmaps; i++) { - if (exaPixmapIsOffscreen(pixmaps[i].pPix)) { - /* Found one in FB, so move all to FB. */ - for (j = 0; j < npixmaps; j++) - exaMigrateTowardFb(pixmaps + i); - return; - } - } - - /* Nobody's in FB, so move all away from FB. */ - for (i = 0; i < npixmaps; i++) - exaMigrateTowardSys(pixmaps + i); - } else if (pExaScr->migration == ExaMigrationAlways) { - /* Always move the pixmaps out if we can't accelerate. If we can - * accelerate, try to move them all in. If that fails, then move them - * back out. - */ - if (!can_accel) { - for (i = 0; i < npixmaps; i++) - exaDoMoveOutPixmap(pixmaps + i); - return; - } - - /* Now, try to move them all into FB */ - for (i = 0; i < npixmaps; i++) { - exaDoMoveInPixmap(pixmaps + i); - } - - /* If we couldn't fit everything in, abort */ - for (i = 0; i < npixmaps; i++) { - if (!exaPixmapIsOffscreen(pixmaps[i].pPix)) { - return; - } - } - - /* Yay, everything's offscreen, mark memory as used */ - for (i = 0; i < npixmaps; i++) { - ExaOffscreenMarkUsed (pixmaps[i].pPix); - } - } -} +/*
+ * Copyright © 2006 Intel Corporation
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+ * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ *
+ * Authors:
+ * Eric Anholt <eric@anholt.net>
+ * Michel Dänzer <michel@tungstengraphics.com>
+ *
+ */
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#endif
+
+#include <string.h>
+
+#include "exa_priv.h"
+#include "exa.h"
+
+#if DEBUG_MIGRATE
+#define DBG_MIGRATE(a) ErrorF a
+#else
+#define DBG_MIGRATE(a)
+#endif
+
+/**
+ * The fallback path for UTS/DFS failing is to just memcpy. exaCopyDirtyToSys
+ * and exaCopyDirtyToFb both needed to do this loop.
+ */
+static void
+exaMemcpyBox (PixmapPtr pPixmap, BoxPtr pbox, CARD8 *src, int src_pitch,
+ CARD8 *dst, int dst_pitch)
+ {
+ int i, cpp = pPixmap->drawable.bitsPerPixel / 8;
+ int bytes = (pbox->x2 - pbox->x1) * cpp;
+
+ src += pbox->y1 * src_pitch + pbox->x1 * cpp;
+ dst += pbox->y1 * dst_pitch + pbox->x1 * cpp;
+
+ for (i = pbox->y2 - pbox->y1; i; i--) {
+ memcpy (dst, src, bytes);
+ src += src_pitch;
+ dst += dst_pitch;
+ }
+}
+
+/**
+ * Returns TRUE if the pixmap is dirty (has been modified in its current
+ * location compared to the other), or lacks a private for tracking
+ * dirtiness.
+ */
+static Bool
+exaPixmapIsDirty (PixmapPtr pPix)
+{
+ ExaPixmapPriv (pPix);
+
+ if (pExaPixmap == NULL)
+ EXA_FatalErrorDebugWithRet(("EXA bug: exaPixmapIsDirty was called on a non-exa pixmap.\n"), TRUE);
+
+ return REGION_NOTEMPTY (pScreen, DamageRegion(pExaPixmap->pDamage)) ||
+ !REGION_EQUAL(pScreen, &pExaPixmap->validSys, &pExaPixmap->validFB);
+}
+
+/**
+ * Returns TRUE if the pixmap is either pinned in FB, or has a sufficient score
+ * to be considered "should be in framebuffer". That's just anything that has
+ * had more acceleration than fallbacks, or has no score yet.
+ *
+ * Only valid if using a migration scheme that tracks score.
+ */
+static Bool
+exaPixmapShouldBeInFB (PixmapPtr pPix)
+{
+ ExaPixmapPriv (pPix);
+
+ if (exaPixmapIsPinned (pPix))
+ return TRUE;
+
+ return pExaPixmap->score >= 0;
+}
+
+/**
+ * If the pixmap is currently dirty, this copies at least the dirty area from
+ * FB to system or vice versa. Both areas must be allocated.
+ */
+static void
+exaCopyDirty(ExaMigrationPtr migrate, RegionPtr pValidDst, RegionPtr pValidSrc,
+ Bool (*transfer) (PixmapPtr pPix, int x, int y, int w, int h,
+ char *sys, int sys_pitch), int fallback_index,
+ void (*sync) (ScreenPtr pScreen))
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaPixmapPriv (pPixmap);
+ RegionPtr damage = DamageRegion (pExaPixmap->pDamage);
+ RegionRec CopyReg;
+ Bool save_offscreen;
+ int save_pitch;
+ BoxPtr pBox;
+ int nbox;
+ Bool access_prepared = FALSE;
+ Bool need_sync = FALSE;
+
+ /* Damaged bits are valid in current copy but invalid in other one */
+ if (pExaPixmap->offscreen) {
+ REGION_UNION(pScreen, &pExaPixmap->validFB, &pExaPixmap->validFB,
+ damage);
+ REGION_SUBTRACT(pScreen, &pExaPixmap->validSys, &pExaPixmap->validSys,
+ damage);
+ } else {
+ REGION_UNION(pScreen, &pExaPixmap->validSys, &pExaPixmap->validSys,
+ damage);
+ REGION_SUBTRACT(pScreen, &pExaPixmap->validFB, &pExaPixmap->validFB,
+ damage);
+ }
+
+ REGION_EMPTY(pScreen, damage);
+
+ /* Copy bits valid in source but not in destination */
+ REGION_NULL(pScreen, &CopyReg);
+ REGION_SUBTRACT(pScreen, &CopyReg, pValidSrc, pValidDst);
+
+ if (migrate->as_dst) {
+ ExaScreenPriv (pPixmap->drawable.pScreen);
+
+ /* XXX: The pending damage region will be marked as damaged after the
+ * operation, so it should serve as an upper bound for the region that
+ * needs to be synchronized for the operation. Unfortunately, this
+ * causes corruption in some cases, e.g. when starting compiz. See
+ * https://bugs.freedesktop.org/show_bug.cgi?id=12916 .
+ */
+ if (pExaScr->optimize_migration) {
+ RegionPtr pending_damage = DamagePendingRegion(pExaPixmap->pDamage);
+
+#if DEBUG_MIGRATE
+ if (REGION_NIL(pending_damage)) {
+ static Bool firsttime = TRUE;
+
+ if (firsttime) {
+ ErrorF("%s: Pending damage region empty!\n", __func__);
+ firsttime = FALSE;
+ }
+ }
+#endif
+
+ /* Try to prevent destination valid region from growing too many
+ * rects by filling it up to the extents of the union of the
+ * destination valid region and the pending damage region.
+ */
+ if (REGION_NUM_RECTS(pValidDst) > 10) {
+ BoxRec box;
+ BoxPtr pValidExt, pDamageExt;
+ RegionRec closure;
+
+ pValidExt = REGION_EXTENTS(pScreen, pValidDst);
+ pDamageExt = REGION_EXTENTS(pScreen, pending_damage);
+
+ box.x1 = min(pValidExt->x1, pDamageExt->x1);
+ box.y1 = min(pValidExt->y1, pDamageExt->y1);
+ box.x2 = max(pValidExt->x2, pDamageExt->x2);
+ box.y2 = max(pValidExt->y2, pDamageExt->y2);
+
+ REGION_INIT(pScreen, &closure, &box, 0);
+ REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, &closure);
+ } else
+ REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, pending_damage);
+ }
+
+ /* The caller may provide a region to be subtracted from the calculated
+ * dirty region. This is to avoid migration of bits that don't
+ * contribute to the result of the operation.
+ */
+ if (migrate->pReg)
+ REGION_SUBTRACT(pScreen, &CopyReg, &CopyReg, migrate->pReg);
+ } else {
+ /* The caller may restrict the region to be migrated for source pixmaps
+ * to what's relevant for the operation.
+ */
+ if (migrate->pReg)
+ REGION_INTERSECT(pScreen, &CopyReg, &CopyReg, migrate->pReg);
+ }
+
+ pBox = REGION_RECTS(&CopyReg);
+ nbox = REGION_NUM_RECTS(&CopyReg);
+
+ save_offscreen = pExaPixmap->offscreen;
+ save_pitch = pPixmap->devKind;
+ pExaPixmap->offscreen = TRUE;
+ pPixmap->devKind = pExaPixmap->fb_pitch;
+
+ while (nbox--) {
+ pBox->x1 = max(pBox->x1, 0);
+ pBox->y1 = max(pBox->y1, 0);
+ pBox->x2 = min(pBox->x2, pPixmap->drawable.width);
+ pBox->y2 = min(pBox->y2, pPixmap->drawable.height);
+
+ if (pBox->x1 >= pBox->x2 || pBox->y1 >= pBox->y2)
+ continue;
+
+ if (!transfer || !transfer (pPixmap,
+ pBox->x1, pBox->y1,
+ pBox->x2 - pBox->x1,
+ pBox->y2 - pBox->y1,
+ (char *) (pExaPixmap->sys_ptr
+ + pBox->y1 * pExaPixmap->sys_pitch
+ + pBox->x1 * pPixmap->drawable.bitsPerPixel / 8),
+ pExaPixmap->sys_pitch))
+ {
+ if (!access_prepared) {
+ ExaDoPrepareAccess(pPixmap, fallback_index);
+ access_prepared = TRUE;
+ }
+ if (fallback_index == EXA_PREPARE_DEST) {
+ exaMemcpyBox (pPixmap, pBox,
+ pExaPixmap->sys_ptr, pExaPixmap->sys_pitch,
+ pPixmap->devPrivate.ptr, pPixmap->devKind);
+ } else {
+ exaMemcpyBox (pPixmap, pBox,
+ pPixmap->devPrivate.ptr, pPixmap->devKind,
+ pExaPixmap->sys_ptr, pExaPixmap->sys_pitch);
+ }
+ } else
+ need_sync = TRUE;
+
+ pBox++;
+ }
+
+ pExaPixmap->offscreen = save_offscreen;
+ pPixmap->devKind = save_pitch;
+
+ /* Try to prevent source valid region from growing too many rects by
+ * removing parts of it which are also in the destination valid region.
+ * Removing anything beyond that would lead to data loss.
+ */
+ if (REGION_NUM_RECTS(pValidSrc) > 20)
+ REGION_SUBTRACT(pScreen, pValidSrc, pValidSrc, pValidDst);
+
+ /* The copied bits are now valid in destination */
+ REGION_UNION(pScreen, pValidDst, pValidDst, &CopyReg);
+
+ REGION_UNINIT(pScreen, &CopyReg);
+
+ if (access_prepared)
+ exaFinishAccess(&pPixmap->drawable, fallback_index);
+ else if (need_sync && sync)
+ sync (pPixmap->drawable.pScreen);
+}
+
+/**
+ * If the pixmap is currently dirty, this copies at least the dirty area from
+ * the framebuffer memory copy to the system memory copy. Both areas must be
+ * allocated.
+ */
+void
+exaCopyDirtyToSys (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaScreenPriv (pPixmap->drawable.pScreen);
+ ExaPixmapPriv (pPixmap);
+
+ exaCopyDirty(migrate, &pExaPixmap->validSys, &pExaPixmap->validFB,
+ pExaScr->info->DownloadFromScreen, EXA_PREPARE_SRC,
+ exaWaitSync);
+}
+
+/**
+ * If the pixmap is currently dirty, this copies at least the dirty area from
+ * the system memory copy to the framebuffer memory copy. Both areas must be
+ * allocated.
+ */
+void
+exaCopyDirtyToFb (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaScreenPriv (pPixmap->drawable.pScreen);
+ ExaPixmapPriv (pPixmap);
+
+ exaCopyDirty(migrate, &pExaPixmap->validFB, &pExaPixmap->validSys,
+ pExaScr->info->UploadToScreen, EXA_PREPARE_DEST, NULL);
+}
+
+/**
+ * Allocates a framebuffer copy of the pixmap if necessary, and then copies
+ * any necessary pixmap data into the framebuffer copy and points the pixmap at
+ * it.
+ *
+ * Note that when first allocated, a pixmap will have FALSE dirty flag.
+ * This is intentional because pixmap data starts out undefined. So if we move
+ * it in due to the first operation against it being accelerated, it will have
+ * undefined framebuffer contents that we didn't have to upload. If we do
+ * moveouts (and moveins) after the first movein, then we will only have to copy
+ * back and forth if the pixmap was written to after the last synchronization of
+ * the two copies. Then, at exaPixmapSave (when the framebuffer copy goes away)
+ * we mark the pixmap dirty, so that the next exaMoveInPixmap will actually move
+ * all the data, since it's almost surely all valid now.
+ */
+static void
+exaDoMoveInPixmap (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ScreenPtr pScreen = pPixmap->drawable.pScreen;
+ ExaScreenPriv (pScreen);
+ ExaPixmapPriv (pPixmap);
+
+ /* If we're VT-switched away, no touching card memory allowed. */
+ if (pExaScr->swappedOut)
+ return;
+
+ /* If we're not allowed to move, then fail. */
+ if (exaPixmapIsPinned(pPixmap))
+ return;
+
+ /* Don't migrate in pixmaps which are less than 8bpp. This avoids a lot of
+ * fragility in EXA, and <8bpp is probably not used enough any more to care
+ * (at least, not in acceleratd paths).
+ */
+ if (pPixmap->drawable.bitsPerPixel < 8)
+ return;
+
+ if (pExaPixmap->accel_blocked)
+ return;
+
+ if (pExaPixmap->area == NULL) {
+ pExaPixmap->area =
+ exaOffscreenAlloc (pScreen, pExaPixmap->fb_size,
+ pExaScr->info->pixmapOffsetAlign, FALSE,
+ exaPixmapSave, (pointer) pPixmap);
+ if (pExaPixmap->area == NULL)
+ return;
+
+ pExaPixmap->fb_ptr = (CARD8 *) pExaScr->info->memoryBase +
+ pExaPixmap->area->offset;
+ }
+
+ exaCopyDirtyToFb (migrate);
+
+ if (exaPixmapIsOffscreen(pPixmap))
+ return;
+
+ DBG_MIGRATE (("-> %p (0x%x) (%dx%d) (%c)\n", pPixmap,
+ (ExaGetPixmapPriv(pPixmap)->area ?
+ ExaGetPixmapPriv(pPixmap)->area->offset : 0),
+ pPixmap->drawable.width,
+ pPixmap->drawable.height,
+ exaPixmapIsDirty(pPixmap) ? 'd' : 'c'));
+
+ pExaPixmap->offscreen = TRUE;
+
+ pPixmap->devKind = pExaPixmap->fb_pitch;
+ pPixmap->drawable.serialNumber = NEXT_SERIAL_NUMBER;
+}
+
+void
+exaMoveInPixmap_classic (PixmapPtr pPixmap)
+{
+ static ExaMigrationRec migrate = { FALSE, TRUE,
+ NULL, NULL };
+
+ migrate.pPix = pPixmap;
+ exaDoMoveInPixmap (&migrate);
+}
+
+/**
+ * Switches the current active location of the pixmap to system memory, copying
+ * updated data out if necessary.
+ */
+static void
+exaDoMoveOutPixmap (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaPixmapPriv (pPixmap);
+
+ if (!pExaPixmap->area || exaPixmapIsPinned(pPixmap))
+ return;
+
+ exaCopyDirtyToSys (migrate);
+
+ if (exaPixmapIsOffscreen(pPixmap)) {
+
+ DBG_MIGRATE (("<- %p (%p) (%dx%d) (%c)\n", pPixmap,
+ (void*)(ExaGetPixmapPriv(pPixmap)->area ?
+ ExaGetPixmapPriv(pPixmap)->area->offset : 0),
+ pPixmap->drawable.width,
+ pPixmap->drawable.height,
+ exaPixmapIsDirty(pPixmap) ? 'd' : 'c'));
+
+ pExaPixmap->offscreen = FALSE;
+
+ pPixmap->devKind = pExaPixmap->sys_pitch;
+ pPixmap->drawable.serialNumber = NEXT_SERIAL_NUMBER;
+ }
+}
+
+void
+exaMoveOutPixmap_classic (PixmapPtr pPixmap)
+{
+ static ExaMigrationRec migrate = { FALSE, TRUE,
+ NULL, NULL };
+
+ migrate.pPix = pPixmap;
+ exaDoMoveOutPixmap (&migrate);
+}
+
+
+/**
+ * Copies out important pixmap data and removes references to framebuffer area.
+ * Called when the memory manager decides it's time to kick the pixmap out of
+ * framebuffer entirely.
+ */
+void
+exaPixmapSave (ScreenPtr pScreen, ExaOffscreenArea *area)
+{
+ PixmapPtr pPixmap = area->privData;
+ ExaPixmapPriv(pPixmap);
+
+ exaMoveOutPixmap(pPixmap);
+
+ pExaPixmap->fb_ptr = NULL;
+ pExaPixmap->area = NULL;
+
+ /* Mark all FB bits as invalid, so all valid system bits get copied to FB
+ * next time */
+ REGION_EMPTY(pPixmap->drawable.pScreen, &pExaPixmap->validFB);
+}
+
+/**
+ * For the "greedy" migration scheme, pushes the pixmap toward being located in
+ * framebuffer memory.
+ */
+static void
+exaMigrateTowardFb (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaPixmapPriv (pPixmap);
+
+ if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED) {
+ DBG_MIGRATE(("UseScreen: not migrating pinned pixmap %p\n",
+ (pointer)pPixmap));
+ return;
+ }
+
+ DBG_MIGRATE(("UseScreen %p score %d\n",
+ (pointer)pPixmap, pExaPixmap->score));
+
+ if (pExaPixmap->score == EXA_PIXMAP_SCORE_INIT) {
+ exaDoMoveInPixmap(migrate);
+ pExaPixmap->score = 0;
+ }
+
+ if (pExaPixmap->score < EXA_PIXMAP_SCORE_MAX)
+ pExaPixmap->score++;
+
+ if (pExaPixmap->score >= EXA_PIXMAP_SCORE_MOVE_IN &&
+ !exaPixmapIsOffscreen(pPixmap))
+ {
+ exaDoMoveInPixmap(migrate);
+ }
+
+ if (exaPixmapIsOffscreen(pPixmap)) {
+ exaCopyDirtyToFb (migrate);
+ ExaOffscreenMarkUsed (pPixmap);
+ } else
+ exaCopyDirtyToSys (migrate);
+}
+
+/**
+ * For the "greedy" migration scheme, pushes the pixmap toward being located in
+ * system memory.
+ */
+static void
+exaMigrateTowardSys (ExaMigrationPtr migrate)
+{
+ PixmapPtr pPixmap = migrate->pPix;
+ ExaPixmapPriv (pPixmap);
+
+ DBG_MIGRATE(("UseMem: %p score %d\n", (pointer)pPixmap, pExaPixmap->score));
+
+ if (pExaPixmap->score == EXA_PIXMAP_SCORE_PINNED)
+ return;
+
+ if (pExaPixmap->score == EXA_PIXMAP_SCORE_INIT)
+ pExaPixmap->score = 0;
+
+ if (pExaPixmap->score > EXA_PIXMAP_SCORE_MIN)
+ pExaPixmap->score--;
+
+ if (pExaPixmap->score <= EXA_PIXMAP_SCORE_MOVE_OUT && pExaPixmap->area)
+ exaDoMoveOutPixmap(migrate);
+
+ if (exaPixmapIsOffscreen(pPixmap)) {
+ exaCopyDirtyToFb (migrate);
+ ExaOffscreenMarkUsed (pPixmap);
+ } else
+ exaCopyDirtyToSys (migrate);
+}
+
+/**
+ * If the pixmap has both a framebuffer and system memory copy, this function
+ * asserts that both of them are the same.
+ */
+static Bool
+exaAssertNotDirty (PixmapPtr pPixmap)
+{
+ ExaPixmapPriv (pPixmap);
+ CARD8 *dst, *src;
+ RegionRec ValidReg;
+ int dst_pitch, src_pitch, cpp, y, nbox, save_pitch;
+ BoxPtr pBox;
+ Bool ret = TRUE, save_offscreen;
+
+ if (exaPixmapIsPinned(pPixmap) || pExaPixmap->area == NULL)
+ return ret;
+
+ REGION_NULL(pScreen, &ValidReg);
+ REGION_INTERSECT(pScreen, &ValidReg, &pExaPixmap->validFB,
+ &pExaPixmap->validSys);
+ nbox = REGION_NUM_RECTS(&ValidReg);
+
+ if (!nbox)
+ goto out;
+
+ pBox = REGION_RECTS(&ValidReg);
+
+ dst_pitch = pExaPixmap->sys_pitch;
+ src_pitch = pExaPixmap->fb_pitch;
+ cpp = pPixmap->drawable.bitsPerPixel / 8;
+
+ save_offscreen = pExaPixmap->offscreen;
+ save_pitch = pPixmap->devKind;
+ pExaPixmap->offscreen = TRUE;
+ pPixmap->devKind = pExaPixmap->fb_pitch;
+
+ if (!ExaDoPrepareAccess(pPixmap, EXA_PREPARE_SRC))
+ goto skip;
+
+ while (nbox--) {
+ int rowbytes;
+
+ pBox->x1 = max(pBox->x1, 0);
+ pBox->y1 = max(pBox->y1, 0);
+ pBox->x2 = min(pBox->x2, pPixmap->drawable.width);
+ pBox->y2 = min(pBox->y2, pPixmap->drawable.height);
+
+ if (pBox->x1 >= pBox->x2 || pBox->y1 >= pBox->y2)
+ continue;
+
+ rowbytes = (pBox->x2 - pBox->x1) * cpp;
+ src = (CARD8 *) pPixmap->devPrivate.ptr + pBox->y1 * src_pitch + pBox->x1 * cpp;
+ dst = pExaPixmap->sys_ptr + pBox->y1 * dst_pitch + pBox->x1 * cpp;
+
+ for (y = pBox->y1; y < pBox->y2;
+ y++, src += src_pitch, dst += dst_pitch) {
+ if (memcmp(dst, src, rowbytes) != 0) {
+ ret = FALSE;
+ exaPixmapDirty(pPixmap, pBox->x1, pBox->y1, pBox->x2,
+ pBox->y2);
+ break;
+ }
+ }
+ }
+
+skip:
+ exaFinishAccess(&pPixmap->drawable, EXA_PREPARE_SRC);
+
+ pExaPixmap->offscreen = save_offscreen;
+ pPixmap->devKind = save_pitch;
+
+out:
+ REGION_UNINIT(pScreen, &ValidReg);
+ return ret;
+}
+
+/**
+ * Performs migration of the pixmaps according to the operation information
+ * provided in pixmaps and can_accel and the migration scheme chosen in the
+ * config file.
+ */
+void
+exaDoMigration_classic (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel)
+{
+ ScreenPtr pScreen = pixmaps[0].pPix->drawable.pScreen;
+ ExaScreenPriv(pScreen);
+ int i, j;
+
+ /* If this debugging flag is set, check each pixmap for whether it is marked
+ * as clean, and if so, actually check if that's the case. This should help
+ * catch issues with failing to mark a drawable as dirty. While it will
+ * catch them late (after the operation happened), it at least explains what
+ * went wrong, and instrumenting the code to find what operation happened
+ * to the pixmap last shouldn't be hard.
+ */
+ if (pExaScr->checkDirtyCorrectness) {
+ for (i = 0; i < npixmaps; i++) {
+ if (!exaPixmapIsDirty (pixmaps[i].pPix) &&
+ !exaAssertNotDirty (pixmaps[i].pPix))
+ ErrorF("%s: Pixmap %d dirty but not marked as such!\n", __FUNCTION__, i);
+ }
+ }
+ /* If anything is pinned in system memory, we won't be able to
+ * accelerate.
+ */
+ for (i = 0; i < npixmaps; i++) {
+ if (exaPixmapIsPinned (pixmaps[i].pPix) &&
+ !exaPixmapIsOffscreen (pixmaps[i].pPix))
+ {
+ EXA_FALLBACK(("Pixmap %p (%dx%d) pinned in sys\n", pixmaps[i].pPix,
+ pixmaps[i].pPix->drawable.width,
+ pixmaps[i].pPix->drawable.height));
+ can_accel = FALSE;
+ break;
+ }
+ }
+
+ if (pExaScr->migration == ExaMigrationSmart) {
+ /* If we've got something as a destination that we shouldn't cause to
+ * become newly dirtied, take the unaccelerated route.
+ */
+ for (i = 0; i < npixmaps; i++) {
+ if (pixmaps[i].as_dst && !exaPixmapShouldBeInFB (pixmaps[i].pPix) &&
+ !exaPixmapIsDirty (pixmaps[i].pPix))
+ {
+ for (i = 0; i < npixmaps; i++) {
+ if (!exaPixmapIsDirty (pixmaps[i].pPix))
+ exaDoMoveOutPixmap (pixmaps + i);
+ }
+ return;
+ }
+ }
+
+ /* If we aren't going to accelerate, then we migrate everybody toward
+ * system memory, and kick out if it's free.
+ */
+ if (!can_accel) {
+ for (i = 0; i < npixmaps; i++) {
+ exaMigrateTowardSys (pixmaps + i);
+ if (!exaPixmapIsDirty (pixmaps[i].pPix))
+ exaDoMoveOutPixmap (pixmaps + i);
+ }
+ return;
+ }
+
+ /* Finally, the acceleration path. Move them all in. */
+ for (i = 0; i < npixmaps; i++) {
+ exaMigrateTowardFb(pixmaps + i);
+ exaDoMoveInPixmap(pixmaps + i);
+ }
+ } else if (pExaScr->migration == ExaMigrationGreedy) {
+ /* If we can't accelerate, either because the driver can't or because one of
+ * the pixmaps is pinned in system memory, then we migrate everybody toward
+ * system memory.
+ *
+ * We also migrate toward system if all pixmaps involved are currently in
+ * system memory -- this can mitigate thrashing when there are significantly
+ * more pixmaps active than would fit in memory.
+ *
+ * If not, then we migrate toward FB so that hopefully acceleration can
+ * happen.
+ */
+ if (!can_accel) {
+ for (i = 0; i < npixmaps; i++)
+ exaMigrateTowardSys (pixmaps + i);
+ return;
+ }
+
+ for (i = 0; i < npixmaps; i++) {
+ if (exaPixmapIsOffscreen(pixmaps[i].pPix)) {
+ /* Found one in FB, so move all to FB. */
+ for (j = 0; j < npixmaps; j++)
+ exaMigrateTowardFb(pixmaps + i);
+ return;
+ }
+ }
+
+ /* Nobody's in FB, so move all away from FB. */
+ for (i = 0; i < npixmaps; i++)
+ exaMigrateTowardSys(pixmaps + i);
+ } else if (pExaScr->migration == ExaMigrationAlways) {
+ /* Always move the pixmaps out if we can't accelerate. If we can
+ * accelerate, try to move them all in. If that fails, then move them
+ * back out.
+ */
+ if (!can_accel) {
+ for (i = 0; i < npixmaps; i++)
+ exaDoMoveOutPixmap(pixmaps + i);
+ return;
+ }
+
+ /* Now, try to move them all into FB */
+ for (i = 0; i < npixmaps; i++) {
+ exaDoMoveInPixmap(pixmaps + i);
+ }
+
+ /* If we couldn't fit everything in, abort */
+ for (i = 0; i < npixmaps; i++) {
+ if (!exaPixmapIsOffscreen(pixmaps[i].pPix)) {
+ return;
+ }
+ }
+
+ /* Yay, everything's offscreen, mark memory as used */
+ for (i = 0; i < npixmaps; i++) {
+ ExaOffscreenMarkUsed (pixmaps[i].pPix);
+ }
+ }
+}
+
+void
+exaPrepareAccessReg_classic(PixmapPtr pPixmap, int index, RegionPtr pReg)
+{
+ ExaMigrationRec pixmaps[1];
+
+ if (index == EXA_PREPARE_DEST || index == EXA_PREPARE_AUX_DEST) {
+ pixmaps[0].as_dst = TRUE;
+ pixmaps[0].as_src = FALSE;
+ } else {
+ pixmaps[0].as_dst = FALSE;
+ pixmaps[0].as_src = TRUE;
+ }
+ pixmaps[0].pPix = pPixmap;
+ pixmaps[0].pReg = pReg;
+
+ exaDoMigration(pixmaps, 1, FALSE);
+
+ (void)ExaDoPrepareAccess(pPixmap, index);
+}
diff --git a/xorg-server/exa/exa_migration_mixed.c b/xorg-server/exa/exa_migration_mixed.c index d1ee9871b..f42c9c233 100644 --- a/xorg-server/exa/exa_migration_mixed.c +++ b/xorg-server/exa/exa_migration_mixed.c @@ -31,55 +31,16 @@ #include "exa_priv.h" #include "exa.h" -static void -exaUploadFallback(PixmapPtr pPixmap, CARD8 *src, int src_pitch) -{ - ExaPixmapPriv(pPixmap); - RegionPtr damage = DamageRegion (pExaPixmap->pDamage); - GCPtr pGC = GetScratchGC (pPixmap->drawable.depth, - pPixmap->drawable.pScreen); - int nbox, cpp = pPixmap->drawable.bitsPerPixel / 8; - DamagePtr backup = pExaPixmap->pDamage; - BoxPtr pbox; - CARD8 *src2; - - /* We don't want damage optimisations. */ - pExaPixmap->pDamage = NULL; - ValidateGC (&pPixmap->drawable, pGC); - - pbox = REGION_RECTS(damage); - nbox = REGION_NUM_RECTS(damage); - - while (nbox--) { - src2 = src + pbox->y1 * src_pitch + pbox->x1 * cpp; - - ExaCheckPutImage(&pPixmap->drawable, pGC, - pPixmap->drawable.depth, pbox->x1, pbox->y1, - pbox->x2 - pbox->x1, pbox->y2 - pbox->y1, 0, - ZPixmap, (char*) src2); - - pbox++; - } - - FreeScratchGC (pGC); - pExaPixmap->pDamage = backup; -} - void exaCreateDriverPixmap_mixed(PixmapPtr pPixmap) { ScreenPtr pScreen = pPixmap->drawable.pScreen; ExaScreenPriv(pScreen); ExaPixmapPriv(pPixmap); - RegionPtr damage = DamageRegion (pExaPixmap->pDamage); - void *sys_buffer = pExaPixmap->sys_ptr; int w = pPixmap->drawable.width, h = pPixmap->drawable.height; int depth = pPixmap->drawable.depth, bpp = pPixmap->drawable.bitsPerPixel; int usage_hint = pPixmap->usage_hint; - int sys_pitch = pExaPixmap->sys_pitch; - int paddedWidth = sys_pitch; - int nbox; - BoxPtr pbox; + int paddedWidth = pExaPixmap->sys_pitch; /* Already done. */ if (pExaPixmap->driverPriv) @@ -105,50 +66,8 @@ exaCreateDriverPixmap_mixed(PixmapPtr pPixmap) if (!pExaPixmap->driverPriv) return; - pExaPixmap->offscreen = TRUE; - pExaPixmap->sys_ptr = pPixmap->devPrivate.ptr = NULL; - pExaPixmap->sys_pitch = pPixmap->devKind = 0; - - pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; (*pScreen->ModifyPixmapHeader)(pPixmap, w, h, 0, 0, paddedWidth, NULL); - - /* scratch pixmaps */ - if (!w || !h) - goto finish; - - /* we do not malloc memory by default. */ - if (!sys_buffer) - goto finish; - - if (!pExaScr->info->UploadToScreen) - goto fallback; - - pbox = REGION_RECTS(damage); - nbox = REGION_NUM_RECTS(damage); - - while (nbox--) { - if (!pExaScr->info->UploadToScreen(pPixmap, pbox->x1, pbox->y1, pbox->x2 - pbox->x1, - pbox->y2 - pbox->y1, (char *) (sys_buffer) + pbox->y1 * sys_pitch + pbox->x1 * (bpp / 8), sys_pitch)) - goto fallback; - - pbox++; - } - - goto finish; - -fallback: - exaUploadFallback(pPixmap, sys_buffer, sys_pitch); - -finish: - free(sys_buffer); - - /* We no longer need this. */ - if (pExaPixmap->pDamage) { - DamageUnregister(&pPixmap->drawable, pExaPixmap->pDamage); - DamageDestroy(pExaPixmap->pDamage); - pExaPixmap->pDamage = NULL; - } } void @@ -175,8 +94,16 @@ exaDoMigration_mixed(ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel) for (i = 0; i < npixmaps; i++) { PixmapPtr pPixmap = pixmaps[i].pPix; ExaPixmapPriv(pPixmap); + if (!pExaPixmap->driverPriv) exaCreateDriverPixmap_mixed(pPixmap); + + if (pExaPixmap->pDamage && exaPixmapIsOffscreen(pPixmap)) { + pPixmap->devKind = pExaPixmap->fb_pitch; + exaCopyDirtyToFb(pixmaps + i); + } + + pExaPixmap->offscreen = exaPixmapIsOffscreen(pPixmap); } } @@ -192,3 +119,91 @@ exaMoveInPixmap_mixed(PixmapPtr pPixmap) exaDoMigration(pixmaps, 1, TRUE); } + +/* With mixed pixmaps, if we fail to get direct access to the driver pixmap, we + * use the DownloadFromScreen hook to retrieve contents to a copy in system + * memory, perform software rendering on that and move back the results with the + * UploadToScreen hook (see exaFinishAccess_mixed). + */ +void +exaPrepareAccessReg_mixed(PixmapPtr pPixmap, int index, RegionPtr pReg) +{ + if (!ExaDoPrepareAccess(pPixmap, index)) { + ExaPixmapPriv(pPixmap); + Bool is_offscreen = exaPixmapIsOffscreen(pPixmap); + ExaMigrationRec pixmaps[1]; + + /* Do we need to allocate our system buffer? */ + if (!pExaPixmap->sys_ptr) { + pExaPixmap->sys_ptr = malloc(pExaPixmap->sys_pitch * + pPixmap->drawable.height); + if (!pExaPixmap->sys_ptr) + FatalError("EXA: malloc failed for size %d bytes\n", + pExaPixmap->sys_pitch * pPixmap->drawable.height); + } + + if (index == EXA_PREPARE_DEST || index == EXA_PREPARE_AUX_DEST) { + pixmaps[0].as_dst = TRUE; + pixmaps[0].as_src = FALSE; + } else { + pixmaps[0].as_dst = FALSE; + pixmaps[0].as_src = TRUE; + } + pixmaps[0].pPix = pPixmap; + pixmaps[0].pReg = pReg; + + if (!pExaPixmap->pDamage && (is_offscreen || !exaPixmapIsPinned(pPixmap))) { + Bool as_dst = pixmaps[0].as_dst; + + /* Set up damage tracking */ + pExaPixmap->pDamage = DamageCreate(NULL, NULL, DamageReportNone, + TRUE, pPixmap->drawable.pScreen, + pPixmap); + + DamageRegister(&pPixmap->drawable, pExaPixmap->pDamage); + /* This ensures that pending damage reflects the current operation. */ + /* This is used by exa to optimize migration. */ + DamageSetReportAfterOp(pExaPixmap->pDamage, TRUE); + + if (is_offscreen) { + exaPixmapDirty(pPixmap, 0, 0, pPixmap->drawable.width, + pPixmap->drawable.height); + + /* We don't know which region of the destination will be damaged, + * have to assume all of it + */ + if (as_dst) { + pixmaps[0].as_dst = FALSE; + pixmaps[0].as_src = TRUE; + pixmaps[0].pReg = NULL; + } + pPixmap->devKind = pExaPixmap->fb_pitch; + exaCopyDirtyToSys(pixmaps); + } + + if (as_dst) + exaPixmapDirty(pPixmap, 0, 0, pPixmap->drawable.width, + pPixmap->drawable.height); + } else if (is_offscreen) { + pPixmap->devKind = pExaPixmap->fb_pitch; + exaCopyDirtyToSys(pixmaps); + } + + pPixmap->devPrivate.ptr = pExaPixmap->sys_ptr; + pPixmap->devKind = pExaPixmap->sys_pitch; + pExaPixmap->offscreen = FALSE; + } +} + +/* Move back results of software rendering on system memory copy of mixed driver + * pixmap (see exaPrepareAccessReg_mixed). + */ +void exaFinishAccess_mixed(PixmapPtr pPixmap, int index) +{ + ExaPixmapPriv(pPixmap); + + if (pExaPixmap->pDamage && exaPixmapIsOffscreen(pPixmap)) { + DamageRegionProcessPending(&pPixmap->drawable); + exaMoveInPixmap_mixed(pPixmap); + } +} diff --git a/xorg-server/exa/exa_mixed.c b/xorg-server/exa/exa_mixed.c index 01f87ba87..167ffa9d5 100644 --- a/xorg-server/exa/exa_mixed.c +++ b/xorg-server/exa/exa_mixed.c @@ -32,8 +32,6 @@ #include "exa.h" /* This file holds the driver allocated pixmaps + better initial placement code. - * A pinned pixmap implies one that is either driver based already or otherwise altered. - * Proper care is taken to free the initially allocated buffer. */ static _X_INLINE void* @@ -46,9 +44,6 @@ ExaGetPixmapAddress(PixmapPtr p) /** * exaCreatePixmap() creates a new pixmap. - * - * Pixmaps are always marked as pinned, unless the pixmap can still be transfered to a - * driver pixmaps. */ PixmapPtr exaCreatePixmap_mixed(ScreenPtr pScreen, int w, int h, int depth, @@ -57,7 +52,7 @@ exaCreatePixmap_mixed(ScreenPtr pScreen, int w, int h, int depth, PixmapPtr pPixmap; ExaPixmapPrivPtr pExaPixmap; int bpp; - size_t paddedWidth, datasize; + size_t paddedWidth; ExaScreenPriv(pScreen); if (w > 32767 || h > 32767) @@ -79,15 +74,12 @@ exaCreatePixmap_mixed(ScreenPtr pScreen, int w, int h, int depth, if (paddedWidth / 4 > 32767 || h > 32767) return NullPixmap; - datasize = h * paddedWidth; - /* We will allocate the system pixmap later if needed. */ pPixmap->devPrivate.ptr = NULL; pExaPixmap->sys_ptr = NULL; pExaPixmap->sys_pitch = paddedWidth; pExaPixmap->area = NULL; - pExaPixmap->offscreen = FALSE; pExaPixmap->fb_ptr = NULL; pExaPixmap->pDamage = NULL; @@ -95,36 +87,15 @@ exaCreatePixmap_mixed(ScreenPtr pScreen, int w, int h, int depth, exaSetAccelBlock(pExaScr, pExaPixmap, w, h, bpp); - /* Avoid freeing sys_ptr. */ - pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; - (*pScreen->ModifyPixmapHeader)(pPixmap, w, h, 0, 0, paddedWidth, NULL); - /* We want to be able to transfer the pixmap to driver memory later on. */ - pExaPixmap->score = EXA_PIXMAP_SCORE_INIT; - /* A scratch pixmap will become a driver pixmap right away. */ if (!w || !h) { exaCreateDriverPixmap_mixed(pPixmap); - } else { - /* Set up damage tracking */ - pExaPixmap->pDamage = DamageCreate (NULL, NULL, - DamageReportNone, TRUE, - pScreen, pPixmap); - - if (pExaPixmap->pDamage == NULL) { - swap(pExaScr, pScreen, DestroyPixmap); - pScreen->DestroyPixmap (pPixmap); - swap(pExaScr, pScreen, DestroyPixmap); - return NULL; - } - - DamageRegister (&pPixmap->drawable, pExaPixmap->pDamage); - /* This ensures that pending damage reflects the current operation. */ - /* This is used by exa to optimize migration. */ - DamageSetReportAfterOp (pExaPixmap->pDamage, TRUE); - } + pExaPixmap->offscreen = exaPixmapIsOffscreen(pPixmap); + } else + pExaPixmap->offscreen = FALSE; return pPixmap; } @@ -136,7 +107,7 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, ScreenPtr pScreen = pPixmap->drawable.pScreen; ExaScreenPrivPtr pExaScr; ExaPixmapPrivPtr pExaPixmap; - Bool ret; + Bool ret, is_offscreen; if (!pPixmap) return FALSE; @@ -144,26 +115,23 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, pExaScr = ExaGetScreenPriv(pScreen); pExaPixmap = ExaGetPixmapPriv(pPixmap); - if (pExaPixmap) { - if (!exaPixmapIsPinned(pPixmap)) { - free(pExaPixmap->sys_ptr); - pExaPixmap->sys_ptr = pPixmap->devPrivate.ptr = NULL; - pExaPixmap->sys_pitch = pPixmap->devKind = 0; - - /* We no longer need this. */ + if (pPixData) { + if (pExaPixmap->driverPriv) { if (pExaPixmap->pDamage) { DamageUnregister(&pPixmap->drawable, pExaPixmap->pDamage); DamageDestroy(pExaPixmap->pDamage); pExaPixmap->pDamage = NULL; } - } - if (pPixData) - pExaPixmap->sys_ptr = pPixData; + pExaScr->info->DestroyPixmap(pScreen, pExaPixmap->driverPriv); + pExaPixmap->driverPriv = NULL; + } - if (devKind > 0) - pExaPixmap->sys_pitch = devKind; + pExaPixmap->offscreen = FALSE; + pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; + } + if (pExaPixmap->driverPriv) { if (width > 0 && height > 0 && bitsPerPixel > 0) { exaSetFbPitch(pExaScr, pExaPixmap, width, height, bitsPerPixel); @@ -171,9 +139,15 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, exaSetAccelBlock(pExaScr, pExaPixmap, width, height, bitsPerPixel); } + } - /* Anything can happen, don't try to predict it all. */ - pExaPixmap->score = EXA_PIXMAP_SCORE_PINNED; + is_offscreen = exaPixmapIsOffscreen(pPixmap); + if (is_offscreen) { + pPixmap->devPrivate.ptr = pExaPixmap->fb_ptr; + pPixmap->devKind = pExaPixmap->fb_pitch; + } else { + pPixmap->devPrivate.ptr = pExaPixmap->sys_ptr; + pPixmap->devKind = pExaPixmap->sys_pitch; } /* Only pass driver pixmaps to the driver. */ @@ -184,10 +158,6 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, * If pPixmap->devPrivate.ptr is non-NULL, then we've got a non-offscreen pixmap. * We need to store the pointer, because PrepareAccess won't be called. */ - if (!pPixData && pPixmap->devPrivate.ptr && pPixmap->devKind) { - pExaPixmap->sys_ptr = pPixmap->devPrivate.ptr; - pExaPixmap->sys_pitch = pPixmap->devKind; - } if (ret == TRUE) goto out; } @@ -198,6 +168,13 @@ exaModifyPixmapHeader_mixed(PixmapPtr pPixmap, int width, int height, int depth, swap(pExaScr, pScreen, ModifyPixmapHeader); out: + if (is_offscreen) { + pExaPixmap->fb_ptr = pPixmap->devPrivate.ptr; + pExaPixmap->fb_pitch = pPixmap->devKind; + } else { + pExaPixmap->sys_ptr = pPixmap->devPrivate.ptr; + pExaPixmap->sys_pitch = pPixmap->devKind; + } /* Always NULL this, we don't want lingering pointers. */ pPixmap->devPrivate.ptr = NULL; @@ -217,10 +194,14 @@ exaDestroyPixmap_mixed(PixmapPtr pPixmap) if (pExaPixmap->driverPriv) pExaScr->info->DestroyPixmap(pScreen, pExaPixmap->driverPriv); - else if (pExaPixmap->sys_ptr && !exaPixmapIsPinned(pPixmap)) - free(pExaPixmap->sys_ptr); pExaPixmap->driverPriv = NULL; - pExaPixmap->sys_ptr = NULL; + + if (pExaPixmap->pDamage) { + if (pExaPixmap->sys_ptr) + free(pExaPixmap->sys_ptr); + pExaPixmap->sys_ptr = NULL; + pExaPixmap->pDamage = NULL; + } } swap(pExaScr, pScreen, DestroyPixmap); diff --git a/xorg-server/exa/exa_priv.h b/xorg-server/exa/exa_priv.h index 869cf1772..1aec8e966 100644 --- a/xorg-server/exa/exa_priv.h +++ b/xorg-server/exa/exa_priv.h @@ -176,6 +176,8 @@ typedef struct { Bool (*pixmap_is_offscreen) (PixmapPtr pPixmap); void (*do_move_in_pixmap) (PixmapPtr pPixmap); void (*do_move_out_pixmap) (PixmapPtr pPixmap); + void (*prepare_access_reg)(PixmapPtr pPixmap, int index, RegionPtr pReg); + void (*finish_access)(PixmapPtr pPixmap, int index); Bool swappedOut; enum ExaMigrationHeuristic migration; @@ -511,10 +513,7 @@ ExaOffscreenFini (ScreenPtr pScreen); /* exa.c */ Bool -ExaDoPrepareAccess(DrawablePtr pDrawable, int index); - -void -exaPrepareAccessReg(DrawablePtr pDrawable, int index, RegionPtr pReg); +ExaDoPrepareAccess(PixmapPtr pPixmap, int index); void exaPrepareAccess(DrawablePtr pDrawable, int index); @@ -609,6 +608,12 @@ exaDoMigration_mixed(ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel); void exaMoveInPixmap_mixed(PixmapPtr pPixmap); +void +exaPrepareAccessReg_mixed(PixmapPtr pPixmap, int index, RegionPtr pReg); + +void +exaFinishAccess_mixed(PixmapPtr pPixmap, int index); + /* exa_render.c */ Bool exaOpReadsDestination (CARD8 op); @@ -665,6 +670,12 @@ exaGlyphs (CARD8 op, /* exa_migration_classic.c */ void +exaCopyDirtyToSys (ExaMigrationPtr migrate); + +void +exaCopyDirtyToFb (ExaMigrationPtr migrate); + +void exaDoMigration_classic (ExaMigrationPtr pixmaps, int npixmaps, Bool can_accel); void @@ -676,4 +687,7 @@ exaMoveOutPixmap_classic (PixmapPtr pPixmap); void exaMoveInPixmap_classic (PixmapPtr pPixmap); +void +exaPrepareAccessReg_classic(PixmapPtr pPixmap, int index, RegionPtr pReg); + #endif /* EXAPRIV_H */ diff --git a/xorg-server/exa/exa_render.c b/xorg-server/exa/exa_render.c index d46930130..1c1856610 100644 --- a/xorg-server/exa/exa_render.c +++ b/xorg-server/exa/exa_render.c @@ -266,6 +266,10 @@ exaTryDriverSolidFill(PicturePtr pSrc, xDst += pDst->pDrawable->x; yDst += pDst->pDrawable->y; + if (pSrc->pDrawable) { + xSrc += pSrc->pDrawable->x; + ySrc += pSrc->pDrawable->y; + } if (!miComputeCompositeRegion (®ion, pSrc, NULL, pDst, xSrc, ySrc, 0, 0, xDst, yDst, @@ -277,9 +281,6 @@ exaTryDriverSolidFill(PicturePtr pSrc, REGION_TRANSLATE(pScreen, ®ion, dst_off_x, dst_off_y); if (pSrc->pDrawable) { - xSrc += pSrc->pDrawable->x; - ySrc += pSrc->pDrawable->y; - pSrcPix = exaGetDrawablePixmap (pSrc->pDrawable); pixel = exaGetPixmapFirstPixel (pSrcPix); } else @@ -340,7 +341,8 @@ exaTryDriverCompositeRects(CARD8 op, ExaCompositeRectPtr rects) { ExaScreenPriv (pDst->pDrawable->pScreen); - int src_off_x, src_off_y, mask_off_x, mask_off_y, dst_off_x, dst_off_y; + int src_off_x = 0, src_off_y = 0, mask_off_x = 0, mask_off_y = 0; + int dst_off_x, dst_off_y; PixmapPtr pSrcPix = NULL, pMaskPix = NULL, pDstPix; ExaPixmapPrivPtr pSrcExaPix = NULL, pMaskExaPix = NULL, pDstExaPix; @@ -656,7 +658,7 @@ exaTryDriverComposite(CARD8 op, */ if (pDstExaPix->accel_blocked || (pSrcExaPix && pSrcExaPix->accel_blocked) || - (pMask && (pMaskExaPix->accel_blocked))) + (pMaskExaPix && (pMaskExaPix->accel_blocked))) { return -1; } diff --git a/xorg-server/exa/exa_unaccel.c b/xorg-server/exa/exa_unaccel.c index 7e26feb83..d7958066b 100644 --- a/xorg-server/exa/exa_unaccel.c +++ b/xorg-server/exa/exa_unaccel.c @@ -1,528 +1,536 @@ -/* - * - * Copyright © 1999 Keith Packard - * - * Permission to use, copy, modify, distribute, and sell this software and its - * documentation for any purpose is hereby granted without fee, provided that - * the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of Keith Packard not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Keith Packard makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -#include "exa_priv.h" - -#ifdef RENDER -#include "mipict.h" -#endif - -/* - * These functions wrap the low-level fb rendering functions and - * synchronize framebuffer/accelerated drawing by stalling until - * the accelerator is idle - */ - -/** - * Calls exaPrepareAccess with EXA_PREPARE_SRC for the tile, if that is the - * current fill style. - * - * Solid doesn't use an extra pixmap source, and Stippled/OpaqueStippled are - * 1bpp and never in fb, so we don't worry about them. - * We should worry about them for completeness sake and going forward. - */ -void -exaPrepareAccessGC(GCPtr pGC) -{ - if (pGC->stipple) - exaPrepareAccess(&pGC->stipple->drawable, EXA_PREPARE_MASK); - if (pGC->fillStyle == FillTiled) - exaPrepareAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC); -} - -/** - * Finishes access to the tile in the GC, if used. - */ -void -exaFinishAccessGC(GCPtr pGC) -{ - if (pGC->fillStyle == FillTiled) - exaFinishAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC); - if (pGC->stipple) - exaFinishAccess(&pGC->stipple->drawable, EXA_PREPARE_MASK); -} - -#if DEBUG_TRACE_FALL -char -exaDrawableLocation(DrawablePtr pDrawable) -{ - return exaDrawableIsOffscreen(pDrawable) ? 's' : 'm'; -} -#endif /* DEBUG_TRACE_FALL */ - -void -ExaCheckFillSpans (DrawablePtr pDrawable, GCPtr pGC, int nspans, - DDXPointPtr ppt, int *pwidth, int fSorted) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->FillSpans (pDrawable, pGC, nspans, ppt, pwidth, fSorted); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckSetSpans (DrawablePtr pDrawable, GCPtr pGC, char *psrc, - DDXPointPtr ppt, int *pwidth, int nspans, int fSorted) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - pGC->ops->SetSpans (pDrawable, pGC, psrc, ppt, pwidth, nspans, fSorted); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPutImage (DrawablePtr pDrawable, GCPtr pGC, int depth, - int x, int y, int w, int h, int leftPad, int format, - char *bits) -{ - ExaPixmapPriv(exaGetDrawablePixmap(pDrawable)); - - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - if (exaGCReadsDestination(pDrawable, pGC->planemask, pGC->fillStyle, - pGC->alu, pGC->clientClipType)) - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - else - exaPrepareAccessReg (pDrawable, EXA_PREPARE_DEST, pExaPixmap->pDamage ? - DamagePendingRegion(pExaPixmap->pDamage) : NULL); - pGC->ops->PutImage (pDrawable, pGC, depth, x, y, w, h, leftPad, format, bits); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckCopyNtoN (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC, - BoxPtr pbox, int nbox, int dx, int dy, Bool reverse, - Bool upsidedown, Pixel bitplane, void *closure) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst, - exaDrawableLocation(pSrc), exaDrawableLocation(pDst))); - exaPrepareAccess (pDst, EXA_PREPARE_DEST); - exaPrepareAccess (pSrc, EXA_PREPARE_SRC); - /* This will eventually call fbCopyNtoN, with some calculation overhead. */ - while (nbox--) { - pGC->ops->CopyArea (pSrc, pDst, pGC, pbox->x1 - pSrc->x + dx, pbox->y1 - pSrc->y + dy, - pbox->x2 - pbox->x1, pbox->y2 - pbox->y1, pbox->x1 - pDst->x, pbox->y1 - pDst->y); - pbox++; - } - exaFinishAccess (pSrc, EXA_PREPARE_SRC); - exaFinishAccess (pDst, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -RegionPtr -ExaCheckCopyArea (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC, - int srcx, int srcy, int w, int h, int dstx, int dsty) -{ - RegionPtr ret; - - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst, - exaDrawableLocation(pSrc), exaDrawableLocation(pDst))); - exaPrepareAccess (pDst, EXA_PREPARE_DEST); - exaPrepareAccess (pSrc, EXA_PREPARE_SRC); - ret = pGC->ops->CopyArea (pSrc, pDst, pGC, srcx, srcy, w, h, dstx, dsty); - exaFinishAccess (pSrc, EXA_PREPARE_SRC); - exaFinishAccess (pDst, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); - - return ret; -} - -RegionPtr -ExaCheckCopyPlane (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC, - int srcx, int srcy, int w, int h, int dstx, int dsty, - unsigned long bitPlane) -{ - RegionPtr ret; - - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst, - exaDrawableLocation(pSrc), exaDrawableLocation(pDst))); - exaPrepareAccess (pDst, EXA_PREPARE_DEST); - exaPrepareAccess (pSrc, EXA_PREPARE_SRC); - ret = pGC->ops->CopyPlane (pSrc, pDst, pGC, srcx, srcy, w, h, dstx, dsty, - bitPlane); - exaFinishAccess (pSrc, EXA_PREPARE_SRC); - exaFinishAccess (pDst, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); - - return ret; -} - -void -ExaCheckPolyPoint (DrawablePtr pDrawable, GCPtr pGC, int mode, int npt, - DDXPointPtr pptInit) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - pGC->ops->PolyPoint (pDrawable, pGC, mode, npt, pptInit); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPolylines (DrawablePtr pDrawable, GCPtr pGC, - int mode, int npt, DDXPointPtr ppt) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c), width %d, mode %d, count %d\n", - pDrawable, exaDrawableLocation(pDrawable), - pGC->lineWidth, mode, npt)); - - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->Polylines (pDrawable, pGC, mode, npt, ppt); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPolySegment (DrawablePtr pDrawable, GCPtr pGC, - int nsegInit, xSegment *pSegInit) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c) width %d, count %d\n", pDrawable, - exaDrawableLocation(pDrawable), pGC->lineWidth, nsegInit)); - - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->PolySegment (pDrawable, pGC, nsegInit, pSegInit); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPolyArc (DrawablePtr pDrawable, GCPtr pGC, - int narcs, xArc *pArcs) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->PolyArc (pDrawable, pGC, narcs, pArcs); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPolyFillRect (DrawablePtr pDrawable, GCPtr pGC, - int nrect, xRectangle *prect) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->PolyFillRect (pDrawable, pGC, nrect, prect); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckImageGlyphBlt (DrawablePtr pDrawable, GCPtr pGC, - int x, int y, unsigned int nglyph, - CharInfoPtr *ppci, pointer pglyphBase) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c)\n", pDrawable, - exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->ImageGlyphBlt (pDrawable, pGC, x, y, nglyph, ppci, pglyphBase); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPolyGlyphBlt (DrawablePtr pDrawable, GCPtr pGC, - int x, int y, unsigned int nglyph, - CharInfoPtr *ppci, pointer pglyphBase) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("to %p (%c), style %d alu %d\n", pDrawable, - exaDrawableLocation(pDrawable), pGC->fillStyle, pGC->alu)); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccessGC (pGC); - pGC->ops->PolyGlyphBlt (pDrawable, pGC, x, y, nglyph, ppci, pglyphBase); - exaFinishAccessGC (pGC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckPushPixels (GCPtr pGC, PixmapPtr pBitmap, - DrawablePtr pDrawable, - int w, int h, int x, int y) -{ - EXA_GC_PROLOGUE(pGC); - EXA_FALLBACK(("from %p to %p (%c,%c)\n", pBitmap, pDrawable, - exaDrawableLocation(&pBitmap->drawable), - exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_DEST); - exaPrepareAccess (&pBitmap->drawable, EXA_PREPARE_SRC); - exaPrepareAccessGC (pGC); - pGC->ops->PushPixels (pGC, pBitmap, pDrawable, w, h, x, y); - exaFinishAccessGC (pGC); - exaFinishAccess (&pBitmap->drawable, EXA_PREPARE_SRC); - exaFinishAccess (pDrawable, EXA_PREPARE_DEST); - EXA_GC_EPILOGUE(pGC); -} - -void -ExaCheckCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc) -{ - DrawablePtr pDrawable = &pWin->drawable; - ScreenPtr pScreen = pDrawable->pScreen; - ExaScreenPriv(pScreen); - EXA_FALLBACK(("from %p\n", pWin)); - - /* being both src and dest, src is safest. */ - exaPrepareAccess(pDrawable, EXA_PREPARE_SRC); - swap(pExaScr, pScreen, CopyWindow); - pScreen->CopyWindow (pWin, ptOldOrg, prgnSrc); - swap(pExaScr, pScreen, CopyWindow); - exaFinishAccess (pDrawable, EXA_PREPARE_SRC); -} - -void -ExaCheckGetImage(DrawablePtr pDrawable, int x, int y, int w, int h, - unsigned int format, unsigned long planeMask, char *d) -{ - BoxRec Box; - RegionRec Reg; - int xoff, yoff; - ScreenPtr pScreen = pDrawable->pScreen; - PixmapPtr pPix = exaGetDrawablePixmap (pDrawable); - ExaScreenPriv(pScreen); - - EXA_FALLBACK(("from %p (%c)\n", pDrawable, - exaDrawableLocation(pDrawable))); - - exaGetDrawableDeltas(pDrawable, pPix, &xoff, &yoff); - - Box.x1 = pDrawable->y + x + xoff; - Box.y1 = pDrawable->y + y + yoff; - Box.x2 = Box.x1 + w; - Box.y2 = Box.y1 + h; - - REGION_INIT(pScreen, &Reg, &Box, 1); - - exaPrepareAccessReg (pDrawable, EXA_PREPARE_SRC, &Reg); - swap(pExaScr, pScreen, GetImage); - pScreen->GetImage (pDrawable, x, y, w, h, format, planeMask, d); - swap(pExaScr, pScreen, GetImage); - exaFinishAccess (pDrawable, EXA_PREPARE_SRC); -} - -void -ExaCheckGetSpans (DrawablePtr pDrawable, - int wMax, - DDXPointPtr ppt, - int *pwidth, - int nspans, - char *pdstStart) -{ - ScreenPtr pScreen = pDrawable->pScreen; - ExaScreenPriv(pScreen); - - EXA_FALLBACK(("from %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable))); - exaPrepareAccess (pDrawable, EXA_PREPARE_SRC); - swap(pExaScr, pScreen, GetSpans); - pScreen->GetSpans (pDrawable, wMax, ppt, pwidth, nspans, pdstStart); - swap(pExaScr, pScreen, GetSpans); - exaFinishAccess (pDrawable, EXA_PREPARE_SRC); -} - -void -ExaCheckComposite (CARD8 op, - PicturePtr pSrc, - PicturePtr pMask, - PicturePtr pDst, - INT16 xSrc, - INT16 ySrc, - INT16 xMask, - INT16 yMask, - INT16 xDst, - INT16 yDst, - CARD16 width, - CARD16 height) -{ - ScreenPtr pScreen = pDst->pDrawable->pScreen; -#ifdef RENDER - PictureScreenPtr ps = GetPictureScreen(pScreen); -#endif /* RENDER */ - ExaScreenPriv(pScreen); - RegionRec region; - int xoff, yoff; - - REGION_NULL(pScreen, ®ion); - - /* We need to prepare access to any separate alpha maps first, in case the - * driver doesn't support EXA_PREPARE_AUX*, in which case EXA_PREPARE_SRC - * may be used for moving them out. - */ - if (pSrc->alphaMap && pSrc->alphaMap->pDrawable) - exaPrepareAccess(pSrc->alphaMap->pDrawable, EXA_PREPARE_AUX_SRC); - if (pMask && pMask->alphaMap && pMask->alphaMap->pDrawable) - exaPrepareAccess(pMask->alphaMap->pDrawable, EXA_PREPARE_AUX_MASK); - - if (!exaOpReadsDestination(op)) { - if (!miComputeCompositeRegion (®ion, pSrc, pMask, pDst, - xSrc, ySrc, xMask, yMask, xDst, yDst, - width, height)) - goto skip; - - exaGetDrawableDeltas (pDst->pDrawable, - exaGetDrawablePixmap(pDst->pDrawable), - &xoff, &yoff); - - REGION_TRANSLATE(pScreen, ®ion, xoff, yoff); - - if (pDst->alphaMap && pDst->alphaMap->pDrawable) - exaPrepareAccessReg(pDst->alphaMap->pDrawable, EXA_PREPARE_AUX_DEST, - ®ion); - - exaPrepareAccessReg (pDst->pDrawable, EXA_PREPARE_DEST, ®ion); - } else { - if (pDst->alphaMap && pDst->alphaMap->pDrawable) - exaPrepareAccess(pDst->alphaMap->pDrawable, EXA_PREPARE_AUX_DEST); - - exaPrepareAccess (pDst->pDrawable, EXA_PREPARE_DEST); - } - - EXA_FALLBACK(("from picts %p/%p to pict %p\n", - pSrc, pMask, pDst)); - - if (pSrc->pDrawable != NULL) - exaPrepareAccess (pSrc->pDrawable, EXA_PREPARE_SRC); - if (pMask && pMask->pDrawable != NULL) - exaPrepareAccess (pMask->pDrawable, EXA_PREPARE_MASK); -#ifdef RENDER - swap(pExaScr, ps, Composite); - ps->Composite (op, - pSrc, - pMask, - pDst, - xSrc, - ySrc, - xMask, - yMask, - xDst, - yDst, - width, - height); - swap(pExaScr, ps, Composite); -#endif /* RENDER */ - if (pMask && pMask->pDrawable != NULL) - exaFinishAccess (pMask->pDrawable, EXA_PREPARE_MASK); - if (pSrc->pDrawable != NULL) - exaFinishAccess (pSrc->pDrawable, EXA_PREPARE_SRC); - exaFinishAccess (pDst->pDrawable, EXA_PREPARE_DEST); - if (pDst->alphaMap && pDst->alphaMap->pDrawable) - exaFinishAccess(pDst->alphaMap->pDrawable, EXA_PREPARE_AUX_DEST); - -skip: - if (pSrc->alphaMap && pSrc->alphaMap->pDrawable) - exaFinishAccess(pSrc->alphaMap->pDrawable, EXA_PREPARE_AUX_SRC); - if (pMask && pMask->alphaMap && pMask->alphaMap->pDrawable) - exaFinishAccess(pMask->alphaMap->pDrawable, EXA_PREPARE_AUX_MASK); - - REGION_UNINIT(pScreen, ®ion); -} - -void -ExaCheckAddTraps (PicturePtr pPicture, - INT16 x_off, - INT16 y_off, - int ntrap, - xTrap *traps) -{ - ScreenPtr pScreen = pPicture->pDrawable->pScreen; -#ifdef RENDER - PictureScreenPtr ps = GetPictureScreen(pScreen); -#endif /* RENDER */ - ExaScreenPriv(pScreen); - - EXA_FALLBACK(("to pict %p (%c)\n", - exaDrawableLocation(pPicture->pDrawable))); - exaPrepareAccess(pPicture->pDrawable, EXA_PREPARE_DEST); -#ifdef RENDER - swap(pExaScr, ps, AddTraps); - ps->AddTraps (pPicture, x_off, y_off, ntrap, traps); - swap(pExaScr, ps, AddTraps); -#endif /* RENDER */ - exaFinishAccess(pPicture->pDrawable, EXA_PREPARE_DEST); -} - -/** - * Gets the 0,0 pixel of a pixmap. Used for doing solid fills of tiled pixmaps - * that happen to be 1x1. Pixmap must be at least 8bpp. - */ -CARD32 -exaGetPixmapFirstPixel (PixmapPtr pPixmap) -{ - switch (pPixmap->drawable.bitsPerPixel) { - case 32: - { - CARD32 pixel; - - pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1, - ZPixmap, ~0, (char*)&pixel); - return pixel; - } - case 16: - { - CARD16 pixel; - - pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1, - ZPixmap, ~0, (char*)&pixel); - return pixel; - } - case 8: - { - CARD8 pixel; - - pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1, - ZPixmap, ~0, (char*)&pixel); - return pixel; - } - default: - FatalError("%s called for invalid bpp %d\n", __FUNCTION__, - pPixmap->drawable.bitsPerPixel); - } -} +/*
+ *
+ * Copyright © 1999 Keith Packard
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Keith Packard not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. Keith Packard makes no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * KEITH PACKARD DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL KEITH PACKARD BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#include "exa_priv.h"
+
+#ifdef RENDER
+#include "mipict.h"
+#endif
+
+/*
+ * These functions wrap the low-level fb rendering functions and
+ * synchronize framebuffer/accelerated drawing by stalling until
+ * the accelerator is idle
+ */
+
+/**
+ * Calls exaPrepareAccess with EXA_PREPARE_SRC for the tile, if that is the
+ * current fill style.
+ *
+ * Solid doesn't use an extra pixmap source, and Stippled/OpaqueStippled are
+ * 1bpp and never in fb, so we don't worry about them.
+ * We should worry about them for completeness sake and going forward.
+ */
+void
+exaPrepareAccessGC(GCPtr pGC)
+{
+ if (pGC->stipple)
+ exaPrepareAccess(&pGC->stipple->drawable, EXA_PREPARE_MASK);
+ if (pGC->fillStyle == FillTiled)
+ exaPrepareAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC);
+}
+
+/**
+ * Finishes access to the tile in the GC, if used.
+ */
+void
+exaFinishAccessGC(GCPtr pGC)
+{
+ if (pGC->fillStyle == FillTiled)
+ exaFinishAccess(&pGC->tile.pixmap->drawable, EXA_PREPARE_SRC);
+ if (pGC->stipple)
+ exaFinishAccess(&pGC->stipple->drawable, EXA_PREPARE_MASK);
+}
+
+#if DEBUG_TRACE_FALL
+char
+exaDrawableLocation(DrawablePtr pDrawable)
+{
+ return exaDrawableIsOffscreen(pDrawable) ? 's' : 'm';
+}
+#endif /* DEBUG_TRACE_FALL */
+
+void
+ExaCheckFillSpans (DrawablePtr pDrawable, GCPtr pGC, int nspans,
+ DDXPointPtr ppt, int *pwidth, int fSorted)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->FillSpans (pDrawable, pGC, nspans, ppt, pwidth, fSorted);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckSetSpans (DrawablePtr pDrawable, GCPtr pGC, char *psrc,
+ DDXPointPtr ppt, int *pwidth, int nspans, int fSorted)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ pGC->ops->SetSpans (pDrawable, pGC, psrc, ppt, pwidth, nspans, fSorted);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPutImage (DrawablePtr pDrawable, GCPtr pGC, int depth,
+ int x, int y, int w, int h, int leftPad, int format,
+ char *bits)
+{
+ PixmapPtr pPixmap = exaGetDrawablePixmap(pDrawable);
+ ExaPixmapPriv(pPixmap);
+ ExaScreenPriv(pDrawable->pScreen);
+
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+ if (!pExaScr->prepare_access_reg || !pExaPixmap->pDamage ||
+ exaGCReadsDestination(pDrawable, pGC->planemask, pGC->fillStyle,
+ pGC->alu, pGC->clientClipType))
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ else
+ pExaScr->prepare_access_reg(pPixmap, EXA_PREPARE_DEST,
+ DamagePendingRegion(pExaPixmap->pDamage));
+ pGC->ops->PutImage (pDrawable, pGC, depth, x, y, w, h, leftPad, format, bits);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckCopyNtoN (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC,
+ BoxPtr pbox, int nbox, int dx, int dy, Bool reverse,
+ Bool upsidedown, Pixel bitplane, void *closure)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst,
+ exaDrawableLocation(pSrc), exaDrawableLocation(pDst)));
+ exaPrepareAccess (pDst, EXA_PREPARE_DEST);
+ exaPrepareAccess (pSrc, EXA_PREPARE_SRC);
+ /* This will eventually call fbCopyNtoN, with some calculation overhead. */
+ while (nbox--) {
+ pGC->ops->CopyArea (pSrc, pDst, pGC, pbox->x1 - pSrc->x + dx, pbox->y1 - pSrc->y + dy,
+ pbox->x2 - pbox->x1, pbox->y2 - pbox->y1, pbox->x1 - pDst->x, pbox->y1 - pDst->y);
+ pbox++;
+ }
+ exaFinishAccess (pSrc, EXA_PREPARE_SRC);
+ exaFinishAccess (pDst, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+RegionPtr
+ExaCheckCopyArea (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC,
+ int srcx, int srcy, int w, int h, int dstx, int dsty)
+{
+ RegionPtr ret;
+
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst,
+ exaDrawableLocation(pSrc), exaDrawableLocation(pDst)));
+ exaPrepareAccess (pDst, EXA_PREPARE_DEST);
+ exaPrepareAccess (pSrc, EXA_PREPARE_SRC);
+ ret = pGC->ops->CopyArea (pSrc, pDst, pGC, srcx, srcy, w, h, dstx, dsty);
+ exaFinishAccess (pSrc, EXA_PREPARE_SRC);
+ exaFinishAccess (pDst, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+
+ return ret;
+}
+
+RegionPtr
+ExaCheckCopyPlane (DrawablePtr pSrc, DrawablePtr pDst, GCPtr pGC,
+ int srcx, int srcy, int w, int h, int dstx, int dsty,
+ unsigned long bitPlane)
+{
+ RegionPtr ret;
+
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("from %p to %p (%c,%c)\n", pSrc, pDst,
+ exaDrawableLocation(pSrc), exaDrawableLocation(pDst)));
+ exaPrepareAccess (pDst, EXA_PREPARE_DEST);
+ exaPrepareAccess (pSrc, EXA_PREPARE_SRC);
+ ret = pGC->ops->CopyPlane (pSrc, pDst, pGC, srcx, srcy, w, h, dstx, dsty,
+ bitPlane);
+ exaFinishAccess (pSrc, EXA_PREPARE_SRC);
+ exaFinishAccess (pDst, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+
+ return ret;
+}
+
+void
+ExaCheckPolyPoint (DrawablePtr pDrawable, GCPtr pGC, int mode, int npt,
+ DDXPointPtr pptInit)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ pGC->ops->PolyPoint (pDrawable, pGC, mode, npt, pptInit);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPolylines (DrawablePtr pDrawable, GCPtr pGC,
+ int mode, int npt, DDXPointPtr ppt)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c), width %d, mode %d, count %d\n",
+ pDrawable, exaDrawableLocation(pDrawable),
+ pGC->lineWidth, mode, npt));
+
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->Polylines (pDrawable, pGC, mode, npt, ppt);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPolySegment (DrawablePtr pDrawable, GCPtr pGC,
+ int nsegInit, xSegment *pSegInit)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c) width %d, count %d\n", pDrawable,
+ exaDrawableLocation(pDrawable), pGC->lineWidth, nsegInit));
+
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->PolySegment (pDrawable, pGC, nsegInit, pSegInit);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPolyArc (DrawablePtr pDrawable, GCPtr pGC,
+ int narcs, xArc *pArcs)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->PolyArc (pDrawable, pGC, narcs, pArcs);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPolyFillRect (DrawablePtr pDrawable, GCPtr pGC,
+ int nrect, xRectangle *prect)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->PolyFillRect (pDrawable, pGC, nrect, prect);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckImageGlyphBlt (DrawablePtr pDrawable, GCPtr pGC,
+ int x, int y, unsigned int nglyph,
+ CharInfoPtr *ppci, pointer pglyphBase)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c)\n", pDrawable,
+ exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->ImageGlyphBlt (pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPolyGlyphBlt (DrawablePtr pDrawable, GCPtr pGC,
+ int x, int y, unsigned int nglyph,
+ CharInfoPtr *ppci, pointer pglyphBase)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("to %p (%c), style %d alu %d\n", pDrawable,
+ exaDrawableLocation(pDrawable), pGC->fillStyle, pGC->alu));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->PolyGlyphBlt (pDrawable, pGC, x, y, nglyph, ppci, pglyphBase);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckPushPixels (GCPtr pGC, PixmapPtr pBitmap,
+ DrawablePtr pDrawable,
+ int w, int h, int x, int y)
+{
+ EXA_GC_PROLOGUE(pGC);
+ EXA_FALLBACK(("from %p to %p (%c,%c)\n", pBitmap, pDrawable,
+ exaDrawableLocation(&pBitmap->drawable),
+ exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_DEST);
+ exaPrepareAccess (&pBitmap->drawable, EXA_PREPARE_SRC);
+ exaPrepareAccessGC (pGC);
+ pGC->ops->PushPixels (pGC, pBitmap, pDrawable, w, h, x, y);
+ exaFinishAccessGC (pGC);
+ exaFinishAccess (&pBitmap->drawable, EXA_PREPARE_SRC);
+ exaFinishAccess (pDrawable, EXA_PREPARE_DEST);
+ EXA_GC_EPILOGUE(pGC);
+}
+
+void
+ExaCheckCopyWindow(WindowPtr pWin, DDXPointRec ptOldOrg, RegionPtr prgnSrc)
+{
+ DrawablePtr pDrawable = &pWin->drawable;
+ ScreenPtr pScreen = pDrawable->pScreen;
+ ExaScreenPriv(pScreen);
+ EXA_FALLBACK(("from %p\n", pWin));
+
+ /* being both src and dest, src is safest. */
+ exaPrepareAccess(pDrawable, EXA_PREPARE_SRC);
+ swap(pExaScr, pScreen, CopyWindow);
+ pScreen->CopyWindow (pWin, ptOldOrg, prgnSrc);
+ swap(pExaScr, pScreen, CopyWindow);
+ exaFinishAccess (pDrawable, EXA_PREPARE_SRC);
+}
+
+void
+ExaCheckGetImage(DrawablePtr pDrawable, int x, int y, int w, int h,
+ unsigned int format, unsigned long planeMask, char *d)
+{
+ ScreenPtr pScreen = pDrawable->pScreen;
+ PixmapPtr pPix = exaGetDrawablePixmap (pDrawable);
+ ExaScreenPriv(pScreen);
+
+ EXA_FALLBACK(("from %p (%c)\n", pDrawable,
+ exaDrawableLocation(pDrawable)));
+
+ if (pExaScr->prepare_access_reg) {
+ int xoff, yoff;
+ BoxRec Box;
+ RegionRec Reg;
+
+ exaGetDrawableDeltas(pDrawable, pPix, &xoff, &yoff);
+
+ Box.x1 = pDrawable->y + x + xoff;
+ Box.y1 = pDrawable->y + y + yoff;
+ Box.x2 = Box.x1 + w;
+ Box.y2 = Box.y1 + h;
+
+ REGION_INIT(pScreen, &Reg, &Box, 1);
+
+ pExaScr->prepare_access_reg(pPix, EXA_PREPARE_SRC, &Reg);
+ } else
+ exaPrepareAccess(pDrawable, EXA_PREPARE_SRC);
+
+ swap(pExaScr, pScreen, GetImage);
+ pScreen->GetImage (pDrawable, x, y, w, h, format, planeMask, d);
+ swap(pExaScr, pScreen, GetImage);
+ exaFinishAccess (pDrawable, EXA_PREPARE_SRC);
+}
+
+void
+ExaCheckGetSpans (DrawablePtr pDrawable,
+ int wMax,
+ DDXPointPtr ppt,
+ int *pwidth,
+ int nspans,
+ char *pdstStart)
+{
+ ScreenPtr pScreen = pDrawable->pScreen;
+ ExaScreenPriv(pScreen);
+
+ EXA_FALLBACK(("from %p (%c)\n", pDrawable, exaDrawableLocation(pDrawable)));
+ exaPrepareAccess (pDrawable, EXA_PREPARE_SRC);
+ swap(pExaScr, pScreen, GetSpans);
+ pScreen->GetSpans (pDrawable, wMax, ppt, pwidth, nspans, pdstStart);
+ swap(pExaScr, pScreen, GetSpans);
+ exaFinishAccess (pDrawable, EXA_PREPARE_SRC);
+}
+
+void
+ExaCheckComposite (CARD8 op,
+ PicturePtr pSrc,
+ PicturePtr pMask,
+ PicturePtr pDst,
+ INT16 xSrc,
+ INT16 ySrc,
+ INT16 xMask,
+ INT16 yMask,
+ INT16 xDst,
+ INT16 yDst,
+ CARD16 width,
+ CARD16 height)
+{
+ ScreenPtr pScreen = pDst->pDrawable->pScreen;
+#ifdef RENDER
+ PictureScreenPtr ps = GetPictureScreen(pScreen);
+#endif /* RENDER */
+ ExaScreenPriv(pScreen);
+ RegionRec region;
+ int xoff, yoff;
+
+ REGION_NULL(pScreen, ®ion);
+
+ /* We need to prepare access to any separate alpha maps first, in case the
+ * driver doesn't support EXA_PREPARE_AUX*, in which case EXA_PREPARE_SRC
+ * may be used for moving them out.
+ */
+ if (pSrc->alphaMap && pSrc->alphaMap->pDrawable)
+ exaPrepareAccess(pSrc->alphaMap->pDrawable, EXA_PREPARE_AUX_SRC);
+ if (pMask && pMask->alphaMap && pMask->alphaMap->pDrawable)
+ exaPrepareAccess(pMask->alphaMap->pDrawable, EXA_PREPARE_AUX_MASK);
+
+ if (!exaOpReadsDestination(op) && pExaScr->prepare_access_reg) {
+ PixmapPtr pDstPix;
+
+ if (!miComputeCompositeRegion (®ion, pSrc, pMask, pDst,
+ xSrc, ySrc, xMask, yMask, xDst, yDst,
+ width, height))
+ goto skip;
+
+ pDstPix = exaGetDrawablePixmap(pDst->pDrawable);
+ exaGetDrawableDeltas (pDst->pDrawable, pDstPix, &xoff, &yoff);
+ REGION_TRANSLATE(pScreen, ®ion, xoff, yoff);
+
+ if (pDst->alphaMap && pDst->alphaMap->pDrawable)
+ pExaScr->prepare_access_reg(exaGetDrawablePixmap(pDst->alphaMap->pDrawable),
+ EXA_PREPARE_AUX_DEST, ®ion);
+
+ pExaScr->prepare_access_reg(pDstPix, EXA_PREPARE_DEST, ®ion);
+ } else {
+ if (pDst->alphaMap && pDst->alphaMap->pDrawable)
+ exaPrepareAccess(pDst->alphaMap->pDrawable, EXA_PREPARE_AUX_DEST);
+
+ exaPrepareAccess (pDst->pDrawable, EXA_PREPARE_DEST);
+ }
+
+ EXA_FALLBACK(("from picts %p/%p to pict %p\n",
+ pSrc, pMask, pDst));
+
+ if (pSrc->pDrawable != NULL)
+ exaPrepareAccess (pSrc->pDrawable, EXA_PREPARE_SRC);
+ if (pMask && pMask->pDrawable != NULL)
+ exaPrepareAccess (pMask->pDrawable, EXA_PREPARE_MASK);
+#ifdef RENDER
+ swap(pExaScr, ps, Composite);
+ ps->Composite (op,
+ pSrc,
+ pMask,
+ pDst,
+ xSrc,
+ ySrc,
+ xMask,
+ yMask,
+ xDst,
+ yDst,
+ width,
+ height);
+ swap(pExaScr, ps, Composite);
+#endif /* RENDER */
+ if (pMask && pMask->pDrawable != NULL)
+ exaFinishAccess (pMask->pDrawable, EXA_PREPARE_MASK);
+ if (pSrc->pDrawable != NULL)
+ exaFinishAccess (pSrc->pDrawable, EXA_PREPARE_SRC);
+ exaFinishAccess (pDst->pDrawable, EXA_PREPARE_DEST);
+ if (pDst->alphaMap && pDst->alphaMap->pDrawable)
+ exaFinishAccess(pDst->alphaMap->pDrawable, EXA_PREPARE_AUX_DEST);
+
+skip:
+ if (pSrc->alphaMap && pSrc->alphaMap->pDrawable)
+ exaFinishAccess(pSrc->alphaMap->pDrawable, EXA_PREPARE_AUX_SRC);
+ if (pMask && pMask->alphaMap && pMask->alphaMap->pDrawable)
+ exaFinishAccess(pMask->alphaMap->pDrawable, EXA_PREPARE_AUX_MASK);
+
+ REGION_UNINIT(pScreen, ®ion);
+}
+
+void
+ExaCheckAddTraps (PicturePtr pPicture,
+ INT16 x_off,
+ INT16 y_off,
+ int ntrap,
+ xTrap *traps)
+{
+ ScreenPtr pScreen = pPicture->pDrawable->pScreen;
+#ifdef RENDER
+ PictureScreenPtr ps = GetPictureScreen(pScreen);
+#endif /* RENDER */
+ ExaScreenPriv(pScreen);
+
+ EXA_FALLBACK(("to pict %p (%c)\n",
+ exaDrawableLocation(pPicture->pDrawable)));
+ exaPrepareAccess(pPicture->pDrawable, EXA_PREPARE_DEST);
+#ifdef RENDER
+ swap(pExaScr, ps, AddTraps);
+ ps->AddTraps (pPicture, x_off, y_off, ntrap, traps);
+ swap(pExaScr, ps, AddTraps);
+#endif /* RENDER */
+ exaFinishAccess(pPicture->pDrawable, EXA_PREPARE_DEST);
+}
+
+/**
+ * Gets the 0,0 pixel of a pixmap. Used for doing solid fills of tiled pixmaps
+ * that happen to be 1x1. Pixmap must be at least 8bpp.
+ */
+CARD32
+exaGetPixmapFirstPixel (PixmapPtr pPixmap)
+{
+ switch (pPixmap->drawable.bitsPerPixel) {
+ case 32:
+ {
+ CARD32 pixel;
+
+ pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1,
+ ZPixmap, ~0, (char*)&pixel);
+ return pixel;
+ }
+ case 16:
+ {
+ CARD16 pixel;
+
+ pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1,
+ ZPixmap, ~0, (char*)&pixel);
+ return pixel;
+ }
+ case 8:
+ {
+ CARD8 pixel;
+
+ pPixmap->drawable.pScreen->GetImage(&pPixmap->drawable, 0, 0, 1, 1,
+ ZPixmap, ~0, (char*)&pixel);
+ return pixel;
+ }
+ default:
+ FatalError("%s called for invalid bpp %d\n", __FUNCTION__,
+ pPixmap->drawable.bitsPerPixel);
+ }
+}
diff --git a/xorg-server/glx/glxscreens.c b/xorg-server/glx/glxscreens.c index fe7b22d96..c6f5700d5 100644 --- a/xorg-server/glx/glxscreens.c +++ b/xorg-server/glx/glxscreens.c @@ -1,516 +1,464 @@ -/* - * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008) - * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved. - * - * Permission is hereby granted, free of charge, to any person obtaining a - * copy of this software and associated documentation files (the "Software"), - * to deal in the Software without restriction, including without limitation - * the rights to use, copy, modify, merge, publish, distribute, sublicense, - * and/or sell copies of the Software, and to permit persons to whom the - * Software is furnished to do so, subject to the following conditions: - * - * The above copyright notice including the dates of first publication and - * either this permission notice or a reference to - * http://oss.sgi.com/projects/FreeB/ - * shall be included in all copies or substantial portions of the Software. - * - * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS - * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, - * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL - * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, - * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF - * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE - * SOFTWARE. - * - * Except as contained in this notice, the name of Silicon Graphics, Inc. - * shall not be used in advertising or otherwise to promote the sale, use or - * other dealings in this Software without prior written authorization from - * Silicon Graphics, Inc. - */ - -#ifdef HAVE_DIX_CONFIG_H -#include <dix-config.h> -#else - -#include "glheader.h" - -#endif - -#include <GL/glxtokens.h> -#include <string.h> -#include <windowstr.h> -#include <os.h> -#include <colormapst.h> - -#include "privates.h" -#include "glxserver.h" -#include "glxutil.h" -#include "glxext.h" - -static int glxScreenPrivateKeyIndex; -static DevPrivateKey glxScreenPrivateKey = &glxScreenPrivateKeyIndex; - -const char GLServerVersion[] = "1.4"; -static const char GLServerExtensions[] = - "GL_ARB_depth_texture " - "GL_ARB_draw_buffers " - "GL_ARB_fragment_program " - "GL_ARB_fragment_program_shadow " - "GL_ARB_imaging " - "GL_ARB_multisample " - "GL_ARB_multitexture " - "GL_ARB_occlusion_query " - "GL_ARB_point_parameters " - "GL_ARB_point_sprite " - "GL_ARB_shadow " - "GL_ARB_shadow_ambient " - "GL_ARB_texture_border_clamp " - "GL_ARB_texture_compression " - "GL_ARB_texture_cube_map " - "GL_ARB_texture_env_add " - "GL_ARB_texture_env_combine " - "GL_ARB_texture_env_crossbar " - "GL_ARB_texture_env_dot3 " - "GL_ARB_texture_mirrored_repeat " - "GL_ARB_texture_non_power_of_two " - "GL_ARB_transpose_matrix " - "GL_ARB_vertex_program " - "GL_ARB_window_pos " - "GL_EXT_abgr " - "GL_EXT_bgra " - "GL_EXT_blend_color " - "GL_EXT_blend_equation_separate " - "GL_EXT_blend_func_separate " - "GL_EXT_blend_logic_op " - "GL_EXT_blend_minmax " - "GL_EXT_blend_subtract " - "GL_EXT_clip_volume_hint " - "GL_EXT_copy_texture " - "GL_EXT_draw_range_elements " - "GL_EXT_fog_coord " - "GL_EXT_framebuffer_object " - "GL_EXT_multi_draw_arrays " - "GL_EXT_packed_pixels " - "GL_EXT_paletted_texture " - "GL_EXT_point_parameters " - "GL_EXT_polygon_offset " - "GL_EXT_rescale_normal " - "GL_EXT_secondary_color " - "GL_EXT_separate_specular_color " - "GL_EXT_shadow_funcs " - "GL_EXT_shared_texture_palette " - "GL_EXT_stencil_two_side " - "GL_EXT_stencil_wrap " - "GL_EXT_subtexture " - "GL_EXT_texture " - "GL_EXT_texture3D " - "GL_EXT_texture_compression_dxt1 " - "GL_EXT_texture_compression_s3tc " - "GL_EXT_texture_edge_clamp " - "GL_EXT_texture_env_add " - "GL_EXT_texture_env_combine " - "GL_EXT_texture_env_dot3 " - "GL_EXT_texture_filter_anisotropic " - "GL_EXT_texture_lod " - "GL_EXT_texture_lod_bias " - "GL_EXT_texture_mirror_clamp " - "GL_EXT_texture_object " - "GL_EXT_texture_rectangle " - "GL_EXT_vertex_array " - "GL_3DFX_texture_compression_FXT1 " - "GL_APPLE_packed_pixels " - "GL_ATI_draw_buffers " - "GL_ATI_texture_env_combine3 " - "GL_ATI_texture_mirror_once " - "GL_HP_occlusion_test " - "GL_IBM_texture_mirrored_repeat " - "GL_INGR_blend_func_separate " - "GL_MESA_pack_invert " - "GL_MESA_ycbcr_texture " - "GL_NV_blend_square " - "GL_NV_depth_clamp " - "GL_NV_fog_distance " - "GL_NV_fragment_program " - "GL_NV_fragment_program_option " - "GL_NV_fragment_program2 " - "GL_NV_light_max_exponent " - "GL_NV_multisample_filter_hint " - "GL_NV_point_sprite " - "GL_NV_texgen_reflection " - "GL_NV_texture_compression_vtc " - "GL_NV_texture_env_combine4 " - "GL_NV_texture_expand_normal " - "GL_NV_texture_rectangle " - "GL_NV_vertex_program " - "GL_NV_vertex_program1_1 " - "GL_NV_vertex_program2 " - "GL_NV_vertex_program2_option " - "GL_NV_vertex_program3 " - "GL_OES_compressed_paletted_texture " - "GL_SGI_color_matrix " - "GL_SGI_color_table " - "GL_SGIS_generate_mipmap " - "GL_SGIS_multisample " - "GL_SGIS_point_parameters " - "GL_SGIS_texture_border_clamp " - "GL_SGIS_texture_edge_clamp " - "GL_SGIS_texture_lod " - "GL_SGIX_depth_texture " - "GL_SGIX_shadow " - "GL_SGIX_shadow_ambient " - "GL_SUN_slice_accum " - ; - -/* -** We have made the simplifying assuption that the same extensions are -** supported across all screens in a multi-screen system. -*/ -static char GLXServerVendorName[] = "SGI"; -static char GLXServerVersion[] = "1.2"; -static char GLXServerExtensions[] = - "GLX_ARB_multisample " - "GLX_EXT_visual_info " - "GLX_EXT_visual_rating " - "GLX_EXT_import_context " - "GLX_EXT_texture_from_pixmap " - "GLX_OML_swap_method " - "GLX_SGI_make_current_read " -#ifndef __APPLE__ - "GLX_SGIS_multisample " - "GLX_SGIX_hyperpipe " - "GLX_SGIX_swap_barrier " -#endif - "GLX_SGIX_fbconfig " - "GLX_SGIX_pbuffer " - "GLX_MESA_copy_sub_buffer " - ; - -/* - * If your DDX driver wants to register support for swap barriers or hyperpipe - * topology, it should call __glXHyperpipeInit() or __glXSwapBarrierInit() - * with a dispatch table of functions to handle the requests. In the XFree86 - * DDX, for example, you would call these near the bottom of the driver's - * ScreenInit method, after DRI has been initialized. - * - * This should be replaced with a better method when we teach the server how - * to load DRI drivers. - */ - -void __glXHyperpipeInit(int screen, __GLXHyperpipeExtensionFuncs *funcs) -{ - __GLXscreen *pGlxScreen = glxGetScreen(screenInfo.screens[screen]); - - pGlxScreen->hyperpipeFuncs = funcs; -} - -void __glXSwapBarrierInit(int screen, __GLXSwapBarrierExtensionFuncs *funcs) -{ - __GLXscreen *pGlxScreen = glxGetScreen(screenInfo.screens[screen]); - - pGlxScreen->swapBarrierFuncs = funcs; -} - -static Bool -glxCloseScreen (int index, ScreenPtr pScreen) -{ - __GLXscreen *pGlxScreen = glxGetScreen(pScreen); - - pScreen->CloseScreen = pGlxScreen->CloseScreen; - pScreen->DestroyWindow = pGlxScreen->DestroyWindow; - - pGlxScreen->destroy(pGlxScreen); - - return pScreen->CloseScreen(index, pScreen); -} - -__GLXscreen * -glxGetScreen(ScreenPtr pScreen) -{ - return dixLookupPrivate(&pScreen->devPrivates, glxScreenPrivateKey); -} - -_X_EXPORT void GlxSetVisualConfigs(int nconfigs, - void *configs, void **privates) -{ - /* We keep this stub around for the DDX drivers that still - * call it. */ -} - -GLint glxConvertToXVisualType(int visualType) -{ - static const int x_visual_types[] = { - TrueColor, DirectColor, - PseudoColor, StaticColor, - GrayScale, StaticGray - }; - - return ( (unsigned) (visualType - GLX_TRUE_COLOR) < 6 ) - ? x_visual_types[ visualType - GLX_TRUE_COLOR ] : -1; -} - -/* This code inspired by composite/compinit.c. We could move this to - * mi/ and share it with composite.*/ - -static VisualPtr -AddScreenVisuals(ScreenPtr pScreen, int count, int d) -{ - XID *installedCmaps, *vids, vid; - int numInstalledCmaps, numVisuals, i, j; - VisualPtr visuals; - ColormapPtr installedCmap; - DepthPtr depth; - int rc; - - depth = NULL; - for (i = 0; i < pScreen->numDepths; i++) { - if (pScreen->allowedDepths[i].depth == d) { - depth = &pScreen->allowedDepths[i]; - break; - } - } - if (depth == NULL) - return NULL; - - /* Find the installed colormaps */ - installedCmaps = xalloc (pScreen->maxInstalledCmaps * sizeof (XID)); - if (!installedCmaps) - return NULL; - - numInstalledCmaps = pScreen->ListInstalledColormaps(pScreen, installedCmaps); - - /* realloc the visual array to fit the new one in place */ - numVisuals = pScreen->numVisuals; - visuals = xrealloc(pScreen->visuals, (numVisuals + count) * sizeof(VisualRec)); - if (!visuals) { - xfree(installedCmaps); - return NULL; - } - - vids = xrealloc(depth->vids, (depth->numVids + count) * sizeof(XID)); - if (vids == NULL) { - xfree(installedCmaps); - xfree(visuals); - return NULL; - } - - /* - * Fix up any existing installed colormaps -- we'll assume that - * the only ones created so far have been installed. If this - * isn't true, we'll have to walk the resource database looking - * for all colormaps. - */ - for (i = 0; i < numInstalledCmaps; i++) { - rc = dixLookupResourceByType((pointer *)&installedCmap, - installedCmaps[i], RT_COLORMAP, - serverClient, DixReadAccess); - if (rc != Success) - continue; - j = installedCmap->pVisual - pScreen->visuals; - installedCmap->pVisual = &visuals[j]; - } - - xfree(installedCmaps); - - for (i = 0; i < count; i++) { - vid = FakeClientID(0); - visuals[pScreen->numVisuals + i].vid = vid; - vids[depth->numVids + i] = vid; - } - - pScreen->visuals = visuals; - pScreen->numVisuals += count; - depth->vids = vids; - depth->numVids += count; - - /* Return a pointer to the first of the added visuals. */ - return pScreen->visuals + pScreen->numVisuals - count; -} - -static int -findFirstSet(unsigned int v) -{ - int i; - - for (i = 0; i < 32; i++) - if (v & (1 << i)) - return i; - - return -1; -} - -static void -initGlxVisual(VisualPtr visual, __GLXconfig *config) -{ - int maxBits; - maxBits = max(config->redBits, max(config->greenBits, config->blueBits)); - - config->visualID = visual->vid; - visual->class = glxConvertToXVisualType(config->visualType); - visual->bitsPerRGBValue = maxBits; - visual->ColormapEntries = 1 << maxBits; - visual->nplanes = config->redBits + config->greenBits + config->blueBits; - - visual->redMask = config->redMask; - visual->greenMask = config->greenMask; - visual->blueMask = config->blueMask; - visual->offsetRed = findFirstSet(config->redMask); - visual->offsetGreen = findFirstSet(config->greenMask); - visual->offsetBlue = findFirstSet(config->blueMask); -} - -static __GLXconfig * -pickFBConfig(__GLXscreen *pGlxScreen, VisualPtr visual) -{ - __GLXconfig *best = NULL, *config; - int best_score = 0; - - for (config = pGlxScreen->fbconfigs; config != NULL; config = config->next) { - int score = 0; - - if (config->redMask != visual->redMask || - config->greenMask != visual->greenMask || - config->blueMask != visual->blueMask) - continue; - if (config->visualRating != GLX_NONE) - continue; - if (glxConvertToXVisualType(config->visualType) != visual->class) - continue; - /* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */ - if (visual->nplanes == 32 && config->rgbBits != 32) - continue; - /* Can't use the same FBconfig for multiple X visuals. I think. */ - if (config->visualID != 0) - continue; - - if (config->doubleBufferMode > 0) - score += 8; - if (config->depthBits > 0) - score += 4; - if (config->stencilBits > 0) - score += 2; - if (config->alphaBits > 0) - score++; - - if (score > best_score) { - best = config; - best_score = score; - } - } - - return best; -} - -static Bool -glxDestroyWindow(WindowPtr pWin) -{ - ScreenPtr pScreen = pWin->drawable.pScreen; - __GLXscreen *pGlxScreen = glxGetScreen(pScreen); - Bool retval = TRUE; - - FreeResource(pWin->drawable.id, FALSE); - - /* call lower wrapped functions */ - if (pGlxScreen->DestroyWindow) { - /* unwrap */ - pScreen->DestroyWindow = pGlxScreen->DestroyWindow; - - /* call lower layers */ - retval = (*pScreen->DestroyWindow)(pWin); - - /* rewrap */ - pGlxScreen->DestroyWindow = pScreen->DestroyWindow; - pScreen->DestroyWindow = glxDestroyWindow; - } - - return retval; -} - -void __glXScreenInit(__GLXscreen *pGlxScreen, ScreenPtr pScreen) -{ - __GLXconfig *m; - __GLXconfig *config; - int i; - - pGlxScreen->pScreen = pScreen; - pGlxScreen->GLextensions = xstrdup(GLServerExtensions); - pGlxScreen->GLXvendor = xstrdup(GLXServerVendorName); - pGlxScreen->GLXversion = xstrdup(GLXServerVersion); - pGlxScreen->GLXextensions = xstrdup(GLXServerExtensions); - - pGlxScreen->CloseScreen = pScreen->CloseScreen; - pScreen->CloseScreen = glxCloseScreen; - pGlxScreen->DestroyWindow = pScreen->DestroyWindow; - pScreen->DestroyWindow = glxDestroyWindow; - - i = 0; - for (m = pGlxScreen->fbconfigs; m != NULL; m = m->next) { - m->fbconfigID = FakeClientID(0); - m->visualID = 0; - i++; - } - pGlxScreen->numFBConfigs = i; - - pGlxScreen->visuals = - xcalloc(pGlxScreen->numFBConfigs, sizeof (__GLXconfig *)); - - /* First, try to choose featureful FBconfigs for the existing X visuals. - * Note that if multiple X visuals end up with the same FBconfig being - * chosen, the later X visuals don't get GLX visuals (because we want to - * prioritize the root visual being GLX). - */ - for (i = 0; i < pScreen->numVisuals; i++) { - VisualPtr visual = &pScreen->visuals[i]; - - config = pickFBConfig(pGlxScreen, visual); - if (config) { - pGlxScreen->visuals[pGlxScreen->numVisuals++] = config; - config->visualID = visual->vid; - } - } - - /* Then, add new visuals corresponding to all FBconfigs that didn't have - * an existing, appropriate visual. - */ - for (config = pGlxScreen->fbconfigs; config != NULL; config = config->next) { - int depth; - - VisualPtr visual; - - if (config->visualID != 0) - continue; - - /* Only count RGB bits and not alpha, as we're not trying to create - * visuals for compositing (that's what the 32-bit composite visual - * set up above is for. - */ - depth = config->redBits + config->greenBits + config->blueBits; - - /* Make sure that our FBconfig's depth can actually be displayed - * (corresponds to an existing visual). - */ - for (i = 0; i < pScreen->numVisuals; i++) { - if (depth == pScreen->visuals[i].nplanes) - break; - } - if (i == pScreen->numVisuals) - continue; - - /* Create a new X visual for our FBconfig. */ - visual = AddScreenVisuals(pScreen, 1, depth); - if (visual == NULL) - continue; - - pGlxScreen->visuals[pGlxScreen->numVisuals++] = config; - initGlxVisual(visual, config); - } - - dixSetPrivate(&pScreen->devPrivates, glxScreenPrivateKey, pGlxScreen); -} - -void __glXScreenDestroy(__GLXscreen *screen) -{ - xfree(screen->GLXvendor); - xfree(screen->GLXversion); - xfree(screen->GLXextensions); - xfree(screen->GLextensions); -} +/*
+ * SGI FREE SOFTWARE LICENSE B (Version 2.0, Sept. 18, 2008)
+ * Copyright (C) 1991-2000 Silicon Graphics, Inc. All Rights Reserved.
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice including the dates of first publication and
+ * either this permission notice or a reference to
+ * http://oss.sgi.com/projects/FreeB/
+ * shall be included in all copies or substantial portions of the Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+ * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
+ * SILICON GRAPHICS, INC. BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
+ * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF
+ * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+ * SOFTWARE.
+ *
+ * Except as contained in this notice, the name of Silicon Graphics, Inc.
+ * shall not be used in advertising or otherwise to promote the sale, use or
+ * other dealings in this Software without prior written authorization from
+ * Silicon Graphics, Inc.
+ */
+
+#ifdef HAVE_DIX_CONFIG_H
+#include <dix-config.h>
+#else
+
+#include "glheader.h"
+
+#endif
+
+#include <GL/glxtokens.h>
+#include <string.h>
+#include <windowstr.h>
+#include <os.h>
+#include <colormapst.h>
+
+#include "privates.h"
+#include "glxserver.h"
+#include "glxutil.h"
+#include "glxext.h"
+
+static int glxScreenPrivateKeyIndex;
+static DevPrivateKey glxScreenPrivateKey = &glxScreenPrivateKeyIndex;
+
+const char GLServerVersion[] = "1.4";
+static const char GLServerExtensions[] =
+ "GL_ARB_depth_texture "
+ "GL_ARB_draw_buffers "
+ "GL_ARB_fragment_program "
+ "GL_ARB_fragment_program_shadow "
+ "GL_ARB_imaging "
+ "GL_ARB_multisample "
+ "GL_ARB_multitexture "
+ "GL_ARB_occlusion_query "
+ "GL_ARB_point_parameters "
+ "GL_ARB_point_sprite "
+ "GL_ARB_shadow "
+ "GL_ARB_shadow_ambient "
+ "GL_ARB_texture_border_clamp "
+ "GL_ARB_texture_compression "
+ "GL_ARB_texture_cube_map "
+ "GL_ARB_texture_env_add "
+ "GL_ARB_texture_env_combine "
+ "GL_ARB_texture_env_crossbar "
+ "GL_ARB_texture_env_dot3 "
+ "GL_ARB_texture_mirrored_repeat "
+ "GL_ARB_texture_non_power_of_two "
+ "GL_ARB_transpose_matrix "
+ "GL_ARB_vertex_program "
+ "GL_ARB_window_pos "
+ "GL_EXT_abgr "
+ "GL_EXT_bgra "
+ "GL_EXT_blend_color "
+ "GL_EXT_blend_equation_separate "
+ "GL_EXT_blend_func_separate "
+ "GL_EXT_blend_logic_op "
+ "GL_EXT_blend_minmax "
+ "GL_EXT_blend_subtract "
+ "GL_EXT_clip_volume_hint "
+ "GL_EXT_copy_texture "
+ "GL_EXT_draw_range_elements "
+ "GL_EXT_fog_coord "
+ "GL_EXT_framebuffer_object "
+ "GL_EXT_multi_draw_arrays "
+ "GL_EXT_packed_pixels "
+ "GL_EXT_paletted_texture "
+ "GL_EXT_point_parameters "
+ "GL_EXT_polygon_offset "
+ "GL_EXT_rescale_normal "
+ "GL_EXT_secondary_color "
+ "GL_EXT_separate_specular_color "
+ "GL_EXT_shadow_funcs "
+ "GL_EXT_shared_texture_palette "
+ "GL_EXT_stencil_two_side "
+ "GL_EXT_stencil_wrap "
+ "GL_EXT_subtexture "
+ "GL_EXT_texture "
+ "GL_EXT_texture3D "
+ "GL_EXT_texture_compression_dxt1 "
+ "GL_EXT_texture_compression_s3tc "
+ "GL_EXT_texture_edge_clamp "
+ "GL_EXT_texture_env_add "
+ "GL_EXT_texture_env_combine "
+ "GL_EXT_texture_env_dot3 "
+ "GL_EXT_texture_filter_anisotropic "
+ "GL_EXT_texture_lod "
+ "GL_EXT_texture_lod_bias "
+ "GL_EXT_texture_mirror_clamp "
+ "GL_EXT_texture_object "
+ "GL_EXT_texture_rectangle "
+ "GL_EXT_vertex_array "
+ "GL_3DFX_texture_compression_FXT1 "
+ "GL_APPLE_packed_pixels "
+ "GL_ATI_draw_buffers "
+ "GL_ATI_texture_env_combine3 "
+ "GL_ATI_texture_mirror_once "
+ "GL_HP_occlusion_test "
+ "GL_IBM_texture_mirrored_repeat "
+ "GL_INGR_blend_func_separate "
+ "GL_MESA_pack_invert "
+ "GL_MESA_ycbcr_texture "
+ "GL_NV_blend_square "
+ "GL_NV_depth_clamp "
+ "GL_NV_fog_distance "
+ "GL_NV_fragment_program "
+ "GL_NV_fragment_program_option "
+ "GL_NV_fragment_program2 "
+ "GL_NV_light_max_exponent "
+ "GL_NV_multisample_filter_hint "
+ "GL_NV_point_sprite "
+ "GL_NV_texgen_reflection "
+ "GL_NV_texture_compression_vtc "
+ "GL_NV_texture_env_combine4 "
+ "GL_NV_texture_expand_normal "
+ "GL_NV_texture_rectangle "
+ "GL_NV_vertex_program "
+ "GL_NV_vertex_program1_1 "
+ "GL_NV_vertex_program2 "
+ "GL_NV_vertex_program2_option "
+ "GL_NV_vertex_program3 "
+ "GL_OES_compressed_paletted_texture "
+ "GL_SGI_color_matrix "
+ "GL_SGI_color_table "
+ "GL_SGIS_generate_mipmap "
+ "GL_SGIS_multisample "
+ "GL_SGIS_point_parameters "
+ "GL_SGIS_texture_border_clamp "
+ "GL_SGIS_texture_edge_clamp "
+ "GL_SGIS_texture_lod "
+ "GL_SGIX_depth_texture "
+ "GL_SGIX_shadow "
+ "GL_SGIX_shadow_ambient "
+ "GL_SUN_slice_accum "
+ ;
+
+/*
+** We have made the simplifying assuption that the same extensions are
+** supported across all screens in a multi-screen system.
+*/
+static char GLXServerVendorName[] = "SGI";
+static char GLXServerVersion[] = "1.2";
+static char GLXServerExtensions[] =
+ "GLX_ARB_multisample "
+ "GLX_EXT_visual_info "
+ "GLX_EXT_visual_rating "
+ "GLX_EXT_import_context "
+ "GLX_EXT_texture_from_pixmap "
+ "GLX_OML_swap_method "
+ "GLX_SGI_make_current_read "
+#ifndef __APPLE__
+ "GLX_SGIS_multisample "
+ "GLX_SGIX_hyperpipe "
+ "GLX_SGIX_swap_barrier "
+#endif
+ "GLX_SGIX_fbconfig "
+ "GLX_SGIX_pbuffer "
+ "GLX_MESA_copy_sub_buffer "
+ ;
+
+/*
+ * If your DDX driver wants to register support for swap barriers or hyperpipe
+ * topology, it should call __glXHyperpipeInit() or __glXSwapBarrierInit()
+ * with a dispatch table of functions to handle the requests. In the XFree86
+ * DDX, for example, you would call these near the bottom of the driver's
+ * ScreenInit method, after DRI has been initialized.
+ *
+ * This should be replaced with a better method when we teach the server how
+ * to load DRI drivers.
+ */
+
+void __glXHyperpipeInit(int screen, __GLXHyperpipeExtensionFuncs *funcs)
+{
+ __GLXscreen *pGlxScreen = glxGetScreen(screenInfo.screens[screen]);
+
+ pGlxScreen->hyperpipeFuncs = funcs;
+}
+
+void __glXSwapBarrierInit(int screen, __GLXSwapBarrierExtensionFuncs *funcs)
+{
+ __GLXscreen *pGlxScreen = glxGetScreen(screenInfo.screens[screen]);
+
+ pGlxScreen->swapBarrierFuncs = funcs;
+}
+
+static Bool
+glxCloseScreen (int index, ScreenPtr pScreen)
+{
+ __GLXscreen *pGlxScreen = glxGetScreen(pScreen);
+
+ pScreen->CloseScreen = pGlxScreen->CloseScreen;
+ pScreen->DestroyWindow = pGlxScreen->DestroyWindow;
+
+ pGlxScreen->destroy(pGlxScreen);
+
+ return pScreen->CloseScreen(index, pScreen);
+}
+
+__GLXscreen *
+glxGetScreen(ScreenPtr pScreen)
+{
+ return dixLookupPrivate(&pScreen->devPrivates, glxScreenPrivateKey);
+}
+
+_X_EXPORT void GlxSetVisualConfigs(int nconfigs,
+ void *configs, void **privates)
+{
+ /* We keep this stub around for the DDX drivers that still
+ * call it. */
+}
+
+GLint glxConvertToXVisualType(int visualType)
+{
+ static const int x_visual_types[] = {
+ TrueColor, DirectColor,
+ PseudoColor, StaticColor,
+ GrayScale, StaticGray
+ };
+
+ return ( (unsigned) (visualType - GLX_TRUE_COLOR) < 6 )
+ ? x_visual_types[ visualType - GLX_TRUE_COLOR ] : -1;
+}
+
+/* This code inspired by composite/compinit.c. We could move this to
+ * mi/ and share it with composite.*/
+
+static VisualPtr
+AddScreenVisuals(ScreenPtr pScreen, int count, int d)
+{
+ int i;
+ DepthPtr depth;
+
+ depth = NULL;
+ for (i = 0; i < pScreen->numDepths; i++) {
+ if (pScreen->allowedDepths[i].depth == d) {
+ depth = &pScreen->allowedDepths[i];
+ break;
+ }
+ }
+ if (depth == NULL)
+ return NULL;
+
+ if (ResizeVisualArray(pScreen, count, depth) == FALSE)
+ return NULL;
+
+ /* Return a pointer to the first of the added visuals. */
+ return pScreen->visuals + pScreen->numVisuals - count;
+}
+
+static int
+findFirstSet(unsigned int v)
+{
+ int i;
+
+ for (i = 0; i < 32; i++)
+ if (v & (1 << i))
+ return i;
+
+ return -1;
+}
+
+static void
+initGlxVisual(VisualPtr visual, __GLXconfig *config)
+{
+ int maxBits;
+ maxBits = max(config->redBits, max(config->greenBits, config->blueBits));
+
+ config->visualID = visual->vid;
+ visual->class = glxConvertToXVisualType(config->visualType);
+ visual->bitsPerRGBValue = maxBits;
+ visual->ColormapEntries = 1 << maxBits;
+ visual->nplanes = config->redBits + config->greenBits + config->blueBits;
+
+ visual->redMask = config->redMask;
+ visual->greenMask = config->greenMask;
+ visual->blueMask = config->blueMask;
+ visual->offsetRed = findFirstSet(config->redMask);
+ visual->offsetGreen = findFirstSet(config->greenMask);
+ visual->offsetBlue = findFirstSet(config->blueMask);
+}
+
+static __GLXconfig *
+pickFBConfig(__GLXscreen *pGlxScreen, VisualPtr visual)
+{
+ __GLXconfig *best = NULL, *config;
+ int best_score = 0;
+
+ for (config = pGlxScreen->fbconfigs; config != NULL; config = config->next) {
+ int score = 0;
+
+ if (config->redMask != visual->redMask ||
+ config->greenMask != visual->greenMask ||
+ config->blueMask != visual->blueMask)
+ continue;
+ if (config->visualRating != GLX_NONE)
+ continue;
+ if (glxConvertToXVisualType(config->visualType) != visual->class)
+ continue;
+ /* If it's the 32-bit RGBA visual, demand a 32-bit fbconfig. */
+ if (visual->nplanes == 32 && config->rgbBits != 32)
+ continue;
+ /* Can't use the same FBconfig for multiple X visuals. I think. */
+ if (config->visualID != 0)
+ continue;
+
+ if (config->doubleBufferMode > 0)
+ score += 8;
+ if (config->depthBits > 0)
+ score += 4;
+ if (config->stencilBits > 0)
+ score += 2;
+ if (config->alphaBits > 0)
+ score++;
+
+ if (score > best_score) {
+ best = config;
+ best_score = score;
+ }
+ }
+
+ return best;
+}
+
+static Bool
+glxDestroyWindow(WindowPtr pWin)
+{
+ ScreenPtr pScreen = pWin->drawable.pScreen;
+ __GLXscreen *pGlxScreen = glxGetScreen(pScreen);
+ Bool retval = TRUE;
+
+ FreeResource(pWin->drawable.id, FALSE);
+
+ /* call lower wrapped functions */
+ if (pGlxScreen->DestroyWindow) {
+ /* unwrap */
+ pScreen->DestroyWindow = pGlxScreen->DestroyWindow;
+
+ /* call lower layers */
+ retval = (*pScreen->DestroyWindow)(pWin);
+
+ /* rewrap */
+ pGlxScreen->DestroyWindow = pScreen->DestroyWindow;
+ pScreen->DestroyWindow = glxDestroyWindow;
+ }
+
+ return retval;
+}
+
+void __glXScreenInit(__GLXscreen *pGlxScreen, ScreenPtr pScreen)
+{
+ __GLXconfig *m;
+ __GLXconfig *config;
+ int i;
+
+ pGlxScreen->pScreen = pScreen;
+ pGlxScreen->GLextensions = xstrdup(GLServerExtensions);
+ pGlxScreen->GLXvendor = xstrdup(GLXServerVendorName);
+ pGlxScreen->GLXversion = xstrdup(GLXServerVersion);
+ pGlxScreen->GLXextensions = xstrdup(GLXServerExtensions);
+
+ pGlxScreen->CloseScreen = pScreen->CloseScreen;
+ pScreen->CloseScreen = glxCloseScreen;
+ pGlxScreen->DestroyWindow = pScreen->DestroyWindow;
+ pScreen->DestroyWindow = glxDestroyWindow;
+
+ i = 0;
+ for (m = pGlxScreen->fbconfigs; m != NULL; m = m->next) {
+ m->fbconfigID = FakeClientID(0);
+ m->visualID = 0;
+ i++;
+ }
+ pGlxScreen->numFBConfigs = i;
+
+ pGlxScreen->visuals =
+ xcalloc(pGlxScreen->numFBConfigs, sizeof (__GLXconfig *));
+
+ /* First, try to choose featureful FBconfigs for the existing X visuals.
+ * Note that if multiple X visuals end up with the same FBconfig being
+ * chosen, the later X visuals don't get GLX visuals (because we want to
+ * prioritize the root visual being GLX).
+ */
+ for (i = 0; i < pScreen->numVisuals; i++) {
+ VisualPtr visual = &pScreen->visuals[i];
+
+ config = pickFBConfig(pGlxScreen, visual);
+ if (config) {
+ pGlxScreen->visuals[pGlxScreen->numVisuals++] = config;
+ config->visualID = visual->vid;
+ }
+ }
+
+ /* Then, add new visuals corresponding to all FBconfigs that didn't have
+ * an existing, appropriate visual.
+ */
+ for (config = pGlxScreen->fbconfigs; config != NULL; config = config->next) {
+ int depth;
+
+ VisualPtr visual;
+
+ if (config->visualID != 0)
+ continue;
+
+ /* Only count RGB bits and not alpha, as we're not trying to create
+ * visuals for compositing (that's what the 32-bit composite visual
+ * set up above is for.
+ */
+ depth = config->redBits + config->greenBits + config->blueBits;
+
+ /* Make sure that our FBconfig's depth can actually be displayed
+ * (corresponds to an existing visual).
+ */
+ for (i = 0; i < pScreen->numVisuals; i++) {
+ if (depth == pScreen->visuals[i].nplanes)
+ break;
+ }
+ if (i == pScreen->numVisuals)
+ continue;
+
+ /* Create a new X visual for our FBconfig. */
+ visual = AddScreenVisuals(pScreen, 1, depth);
+ if (visual == NULL)
+ continue;
+
+ pGlxScreen->visuals[pGlxScreen->numVisuals++] = config;
+ initGlxVisual(visual, config);
+ }
+
+ dixSetPrivate(&pScreen->devPrivates, glxScreenPrivateKey, pGlxScreen);
+}
+
+void __glXScreenDestroy(__GLXscreen *screen)
+{
+ xfree(screen->GLXvendor);
+ xfree(screen->GLXversion);
+ xfree(screen->GLXextensions);
+ xfree(screen->GLextensions);
+}
diff --git a/xorg-server/hw/dmx/Makefile.am b/xorg-server/hw/dmx/Makefile.am index b31fbb85c..3c59320e1 100644 --- a/xorg-server/hw/dmx/Makefile.am +++ b/xorg-server/hw/dmx/Makefile.am @@ -84,10 +84,7 @@ XDMX_LIBS = \ @XDMX_LIBS@ \ $(GLX_LIBS) \ input/libdmxinput.a \ - config/libdmxconfig.a \ - $(MAIN_LIB) \ - $(XSERVER_LIBS) \ - $(top_builddir)/xfixes/libxfixes.la + config/libdmxconfig.a Xdmx_LDFLAGS = $(LD_EXPORT_SYMBOLS_FLAG) Xdmx_DEPENDENCIES= $(XDMX_LIBS) diff --git a/xorg-server/hw/dmx/Makefile.in b/xorg-server/hw/dmx/Makefile.in index 3a87107b8..1e9c1693e 100644 --- a/xorg-server/hw/dmx/Makefile.in +++ b/xorg-server/hw/dmx/Makefile.in @@ -83,10 +83,9 @@ am_Xdmx_OBJECTS = dmx.$(OBJEXT) dmxcb.$(OBJEXT) dmxcmap.$(OBJEXT) \ dmxsync.$(OBJEXT) dmxvisual.$(OBJEXT) dmxwindow.$(OBJEXT) \ miinitext.$(OBJEXT) fbcmap_mi.$(OBJEXT) $(am__objects_2) Xdmx_OBJECTS = $(am_Xdmx_OBJECTS) -am__DEPENDENCIES_1 = -am__DEPENDENCIES_2 = $(GLX_LIBS) input/libdmxinput.a \ - config/libdmxconfig.a $(am__DEPENDENCIES_1) \ - $(am__DEPENDENCIES_1) $(top_builddir)/xfixes/libxfixes.la +am__DEPENDENCIES_1 = $(GLX_LIBS) input/libdmxinput.a \ + config/libdmxconfig.a +am__DEPENDENCIES_2 = AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) am__v_lt_0 = --silent @@ -364,10 +363,7 @@ XDMX_LIBS = \ @XDMX_LIBS@ \ $(GLX_LIBS) \ input/libdmxinput.a \ - config/libdmxconfig.a \ - $(MAIN_LIB) \ - $(XSERVER_LIBS) \ - $(top_builddir)/xfixes/libxfixes.la + config/libdmxconfig.a XDMX_SYS_LIBS = @XDMX_SYS_LIBS@ XEPHYR_CFLAGS = @XEPHYR_CFLAGS@ diff --git a/xorg-server/hw/dmx/dmx-config.h b/xorg-server/hw/dmx/dmx-config.h index 5b7b60593..9791dc0bc 100644 --- a/xorg-server/hw/dmx/dmx-config.h +++ b/xorg-server/hw/dmx/dmx-config.h @@ -72,17 +72,4 @@ /* Enable the DMX extension */ #define DMXEXT -/* Disable the extensions that are not currently supported */ -#undef MULTIBUFFER -#undef XV -#undef DBE -#undef XF86VIDMODE -#undef XFreeXDGA -#undef XF86DRI -#undef SCREENSAVER -#undef RANDR -#undef XFIXES -#undef DAMAGE -#undef COMPOSITE - #endif /* DMX_CONFIG_H */ diff --git a/xorg-server/hw/dmx/input/dmxevents.c b/xorg-server/hw/dmx/input/dmxevents.c index 5c3d79215..70737b4c4 100644 --- a/xorg-server/hw/dmx/input/dmxevents.c +++ b/xorg-server/hw/dmx/input/dmxevents.c @@ -183,7 +183,7 @@ static void enqueueMotion(DevicePtr pDev, int x, int y) GetEventList(&events); nevents = GetPointerEvents(events, p, MotionNotify, detail, - POINTER_ABSOLUTE, 0, 2, valuators); + POINTER_ABSOLUTE | POINTER_SCREEN, 0, 2, valuators); for (i = 0; i < nevents; i++) mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; @@ -688,7 +688,7 @@ void dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym, detail = dmxGetButtonMapping(dmxLocal, detail); GetEventList(&events); nevents = GetPointerEvents(events, p, type, detail, - POINTER_ABSOLUTE, + POINTER_ABSOLUTE | POINTER_SCREEN, 0, /* first_valuator = 0 */ 0, /* num_valuators = 0 */ valuators); @@ -700,9 +700,9 @@ void dmxEnqueue(DevicePtr pDev, int type, int detail, KeySym keySym, GetEventList(&events); valuators[0] = e->xmotion.x; valuators[1] = e->xmotion.y; - valuators[2] = e->xmotion.state; + valuators[2] = e->xmotion.state; /* FIXME: WTF?? */ nevents = GetPointerEvents(events, p, type, detail, - POINTER_ABSOLUTE, 0, 3, valuators); + POINTER_ABSOLUTE | POINTER_SCREEN, 0, 3, valuators); for (i = 0; i < nevents; i++) mieqEnqueue(p, (InternalEvent*)(events + i)->event); return; diff --git a/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre b/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre index 008256914..eb80b96b0 100644 --- a/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre +++ b/xorg-server/hw/kdrive/ephyr/Xephyr.man.pre @@ -46,6 +46,11 @@ sets the screen size. .BI -parent " id" uses exiting window .I id . +If a +.BI -screen +argument follows a +.BI -parent +argument, this screen is embedded into the given window. .TP 8 .B -host-cursor set 'cursor acceleration': diff --git a/xorg-server/hw/kdrive/ephyr/ephyr.c b/xorg-server/hw/kdrive/ephyr/ephyr.c index 947a7ff1b..87e48afaf 100644 --- a/xorg-server/hw/kdrive/ephyr/ephyr.c +++ b/xorg-server/hw/kdrive/ephyr/ephyr.c @@ -1,1183 +1,1187 @@ -/* - * Xephyr - A kdrive X server thats runs in a host X window. - * Authored by Matthew Allum <mallum@openedhand.com> - * - * Copyright © 2004 Nokia - * - * Permission to use, copy, modify, distribute, and sell this software and its - * documentation for any purpose is hereby granted without fee, provided that - * the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of Nokia not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Nokia makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * NOKIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL NOKIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -#ifdef HAVE_CONFIG_H -#include <kdrive-config.h> -#endif -#include "ephyr.h" - -#include "inputstr.h" -#include "scrnintstr.h" -#include "ephyrlog.h" - -#ifdef XF86DRI -#include "ephyrdri.h" -#include "ephyrdriext.h" -#include "ephyrglxext.h" -#endif /* XF86DRI */ - -extern int KdTsPhyScreen; -#ifdef GLXEXT -extern Bool noGlxVisualInit; -#endif - -KdKeyboardInfo *ephyrKbd; -KdPointerInfo *ephyrMouse; -EphyrKeySyms ephyrKeySyms; -Bool ephyrNoDRI=FALSE ; -Bool ephyrNoXV=FALSE ; - -static int mouseState = 0; - -typedef struct _EphyrInputPrivate { - Bool enabled; -} EphyrKbdPrivate, EphyrPointerPrivate; - -Bool EphyrWantGrayScale = 0; - - -Bool -ephyrInitialize (KdCardInfo *card, EphyrPriv *priv) -{ -#ifdef _MSC_VER - __asm int 3; -#else - OsSignal(SIGUSR1, hostx_handle_signal); -#endif - priv->base = 0; - priv->bytes_per_line = 0; - return TRUE; -} - -Bool -ephyrCardInit (KdCardInfo *card) -{ - EphyrPriv *priv; - - priv = (EphyrPriv *) xalloc (sizeof (EphyrPriv)); - if (!priv) - return FALSE; - - if (!ephyrInitialize (card, priv)) - { - xfree (priv); - return FALSE; - } - card->driver = priv; - - return TRUE; -} - -Bool -ephyrScreenInitialize (KdScreenInfo *screen, EphyrScrPriv *scrpriv) -{ - int width = 640, height = 480; - CARD32 redMask, greenMask, blueMask; - - if (hostx_want_screen_size(screen, &width, &height) - || !screen->width || !screen->height) - { - screen->width = width; - screen->height = height; - } - - if (EphyrWantGrayScale) - screen->fb[0].depth = 8; - - if (screen->fb[0].depth && screen->fb[0].depth != hostx_get_depth()) - { - if (screen->fb[0].depth < hostx_get_depth() - && (screen->fb[0].depth == 24 || screen->fb[0].depth == 16 - || screen->fb[0].depth == 8)) - { - hostx_set_server_depth(screen, screen->fb[0].depth); - } - else - ErrorF("\nXephyr: requested screen depth not supported, setting to match hosts.\n"); - } - - screen->fb[0].depth = hostx_get_server_depth(screen); - screen->rate = 72; - - if (screen->fb[0].depth <= 8) - { - if (EphyrWantGrayScale) - screen->fb[0].visuals = ((1 << StaticGray) | (1 << GrayScale)); - else - screen->fb[0].visuals = ((1 << StaticGray) | - (1 << GrayScale) | - (1 << StaticColor) | - (1 << PseudoColor) | - (1 << TrueColor) | - (1 << DirectColor)); - - screen->fb[0].redMask = 0x00; - screen->fb[0].greenMask = 0x00; - screen->fb[0].blueMask = 0x00; - screen->fb[0].depth = 8; - screen->fb[0].bitsPerPixel = 8; - } - else - { - screen->fb[0].visuals = (1 << TrueColor); - - if (screen->fb[0].depth <= 15) - { - screen->fb[0].depth = 15; - screen->fb[0].bitsPerPixel = 16; - } - else if (screen->fb[0].depth <= 16) - { - screen->fb[0].depth = 16; - screen->fb[0].bitsPerPixel = 16; - } - else if (screen->fb[0].depth <= 24) - { - screen->fb[0].depth = 24; - screen->fb[0].bitsPerPixel = 32; - } - else if (screen->fb[0].depth <= 30) - { - screen->fb[0].depth = 30; - screen->fb[0].bitsPerPixel = 32; - } - else - { - ErrorF("\nXephyr: Unsupported screen depth %d\n", - screen->fb[0].depth); - return FALSE; - } - - hostx_get_visual_masks (screen, &redMask, &greenMask, &blueMask); - - screen->fb[0].redMask = (Pixel) redMask; - screen->fb[0].greenMask = (Pixel) greenMask; - screen->fb[0].blueMask = (Pixel) blueMask; - - } - - scrpriv->randr = screen->randr; - - return ephyrMapFramebuffer (screen); -} - -Bool -ephyrScreenInit (KdScreenInfo *screen) -{ - EphyrScrPriv *scrpriv; - - scrpriv = xcalloc (1, sizeof (EphyrScrPriv)); - - if (!scrpriv) - return FALSE; - - screen->driver = scrpriv; - - if (!ephyrScreenInitialize (screen, scrpriv)) - { - screen->driver = 0; - xfree (scrpriv); - return FALSE; - } - - return TRUE; -} - -void* -ephyrWindowLinear (ScreenPtr pScreen, - CARD32 row, - CARD32 offset, - int mode, - CARD32 *size, - void *closure) -{ - KdScreenPriv(pScreen); - EphyrPriv *priv = pScreenPriv->card->driver; - - if (!pScreenPriv->enabled) - return 0; - - *size = priv->bytes_per_line; - return priv->base + row * priv->bytes_per_line + offset; -} - -Bool -ephyrMapFramebuffer (KdScreenInfo *screen) -{ - EphyrScrPriv *scrpriv = screen->driver; - EphyrPriv *priv = screen->card->driver; - KdPointerMatrix m; - int buffer_height; - - EPHYR_LOG("screen->width: %d, screen->height: %d index=%d", - screen->width, screen->height, screen->mynum); - - KdComputePointerMatrix (&m, scrpriv->randr, screen->width, screen->height); - KdSetPointerMatrix (&m); - - priv->bytes_per_line = ((screen->width * screen->fb[0].bitsPerPixel + 31) >> 5) << 2; - - /* point the framebuffer to the data in an XImage */ - /* If fakexa is enabled, allocate a larger buffer so that fakexa has space to - * put offscreen pixmaps. - */ - if (ephyrFuncs.initAccel == NULL) - buffer_height = screen->height; - else - buffer_height = 3 * screen->height; - - priv->base = hostx_screen_init (screen, screen->width, screen->height, buffer_height); - - screen->memory_base = (CARD8 *) (priv->base); - screen->memory_size = priv->bytes_per_line * buffer_height; - screen->off_screen_base = priv->bytes_per_line * screen->height; - - if ((scrpriv->randr & RR_Rotate_0) && !(scrpriv->randr & RR_Reflect_All)) - { - scrpriv->shadow = FALSE; - - screen->fb[0].byteStride = priv->bytes_per_line; - screen->fb[0].pixelStride = screen->width; - screen->fb[0].frameBuffer = (CARD8 *) (priv->base); - } - else - { - /* Rotated/Reflected so we need to use shadow fb */ - scrpriv->shadow = TRUE; - - EPHYR_LOG("allocing shadow"); - - KdShadowFbAlloc (screen, 0, - scrpriv->randr & (RR_Rotate_90|RR_Rotate_270)); - } - - return TRUE; -} - -void -ephyrSetScreenSizes (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - - if (scrpriv->randr & (RR_Rotate_0|RR_Rotate_180)) - { - pScreen->width = screen->width; - pScreen->height = screen->height; - pScreen->mmWidth = screen->width_mm; - pScreen->mmHeight = screen->height_mm; - } - else - { - pScreen->width = screen->height; - pScreen->height = screen->width; - pScreen->mmWidth = screen->height_mm; - pScreen->mmHeight = screen->width_mm; - } -} - -Bool -ephyrUnmapFramebuffer (KdScreenInfo *screen) -{ - EphyrScrPriv *scrpriv = screen->driver; - - if (scrpriv->shadow) - KdShadowFbFree (screen, 0); - - /* Note, priv->base will get freed when XImage recreated */ - - return TRUE; -} - -void -ephyrShadowUpdate (ScreenPtr pScreen, shadowBufPtr pBuf) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - - EPHYR_LOG("slow paint"); - - /* FIXME: Slow Rotated/Reflected updates could be much - * much faster efficiently updating via tranforming - * pBuf->pDamage regions - */ - shadowUpdateRotatePacked(pScreen, pBuf); - hostx_paint_rect(screen, 0,0,0,0, screen->width, screen->height); -} - -static void -ephyrInternalDamageRedisplay (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - RegionPtr pRegion; - - if (!scrpriv || !scrpriv->pDamage) - return; - - pRegion = DamageRegion (scrpriv->pDamage); - - if (REGION_NOTEMPTY (pScreen, pRegion)) - { - int nbox; - BoxPtr pbox; - - nbox = REGION_NUM_RECTS (pRegion); - pbox = REGION_RECTS (pRegion); - - while (nbox--) - { - hostx_paint_rect(screen, - pbox->x1, pbox->y1, - pbox->x1, pbox->y1, - pbox->x2 - pbox->x1, - pbox->y2 - pbox->y1); - pbox++; - } - DamageEmpty (scrpriv->pDamage); - } -} - -static void -ephyrInternalDamageBlockHandler (pointer data, - OSTimePtr pTimeout, - pointer pRead) -{ - ScreenPtr pScreen = (ScreenPtr) data; - - ephyrInternalDamageRedisplay (pScreen); -} - -static void -ephyrInternalDamageWakeupHandler (pointer data, int i, pointer LastSelectMask) -{ - /* FIXME: Not needed ? */ -} - -Bool -ephyrSetInternalDamage (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - PixmapPtr pPixmap = NULL; - - scrpriv->pDamage = DamageCreate ((DamageReportFunc) 0, - (DamageDestroyFunc) 0, - DamageReportNone, - TRUE, - pScreen, - pScreen); - - if (!RegisterBlockAndWakeupHandlers (ephyrInternalDamageBlockHandler, - ephyrInternalDamageWakeupHandler, - (pointer) pScreen)) - return FALSE; - - pPixmap = (*pScreen->GetScreenPixmap) (pScreen); - - DamageRegister (&pPixmap->drawable, scrpriv->pDamage); - - return TRUE; -} - -void -ephyrUnsetInternalDamage (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - PixmapPtr pPixmap = NULL; - - pPixmap = (*pScreen->GetScreenPixmap) (pScreen); - DamageUnregister (&pPixmap->drawable, scrpriv->pDamage); - DamageDestroy (scrpriv->pDamage); - - RemoveBlockAndWakeupHandlers (ephyrInternalDamageBlockHandler, - ephyrInternalDamageWakeupHandler, - (pointer) pScreen); -} - -#ifdef RANDR -Bool -ephyrRandRGetInfo (ScreenPtr pScreen, Rotation *rotations) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - RRScreenSizePtr pSize; - Rotation randr; - int n = 0; - - struct { int width, height; } sizes[] = - { - { 1600, 1200 }, - { 1400, 1050 }, - { 1280, 960 }, - { 1280, 1024 }, - { 1152, 864 }, - { 1024, 768 }, - { 832, 624 }, - { 800, 600 }, - { 720, 400 }, - { 480, 640 }, - { 640, 480 }, - { 640, 400 }, - { 320, 240 }, - { 240, 320 }, - { 160, 160 }, - { 0, 0 } - }; - - EPHYR_LOG("mark"); - - *rotations = RR_Rotate_All|RR_Reflect_All; - - if (!hostx_want_preexisting_window (screen) - && !hostx_want_fullscreen ()) /* only if no -parent switch */ - { - while (sizes[n].width != 0 && sizes[n].height != 0) - { - RRRegisterSize (pScreen, - sizes[n].width, - sizes[n].height, - (sizes[n].width * screen->width_mm)/screen->width, - (sizes[n].height *screen->height_mm)/screen->height - ); - n++; - } - } - - pSize = RRRegisterSize (pScreen, - screen->width, - screen->height, - screen->width_mm, - screen->height_mm); - - randr = KdSubRotation (scrpriv->randr, screen->randr); - - RRSetCurrentConfig (pScreen, randr, 0, pSize); - - return TRUE; -} - -Bool -ephyrRandRSetConfig (ScreenPtr pScreen, - Rotation randr, - int rate, - RRScreenSizePtr pSize) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - Bool wasEnabled = pScreenPriv->enabled; - EphyrScrPriv oldscr; - int oldwidth, oldheight, oldmmwidth, oldmmheight; - Bool oldshadow; - int newwidth, newheight; - - if (screen->randr & (RR_Rotate_0|RR_Rotate_180)) - { - newwidth = pSize->width; - newheight = pSize->height; - } - else - { - newwidth = pSize->height; - newheight = pSize->width; - } - - if (wasEnabled) - KdDisableScreen (pScreen); - - oldscr = *scrpriv; - - oldwidth = screen->width; - oldheight = screen->height; - oldmmwidth = pScreen->mmWidth; - oldmmheight = pScreen->mmHeight; - oldshadow = scrpriv->shadow; - - /* - * Set new configuration - */ - - scrpriv->randr = KdAddRotation (screen->randr, randr); - - ephyrUnmapFramebuffer (screen); - - screen->width = newwidth; - screen->height = newheight; - - if (!ephyrMapFramebuffer (screen)) - goto bail4; - - /* FIXME below should go in own call */ - - if (oldshadow) - KdShadowUnset (screen->pScreen); - else - ephyrUnsetInternalDamage(screen->pScreen); - - if (scrpriv->shadow) - { - if (!KdShadowSet (screen->pScreen, - scrpriv->randr, - ephyrShadowUpdate, - ephyrWindowLinear)) - goto bail4; - } - else - { - /* Without shadow fb ( non rotated ) we need - * to use damage to efficiently update display - * via signal regions what to copy from 'fb'. - */ - if (!ephyrSetInternalDamage(screen->pScreen)) - goto bail4; - } - - ephyrSetScreenSizes (screen->pScreen); - - /* - * Set frame buffer mapping - */ - (*pScreen->ModifyPixmapHeader) (fbGetScreenPixmap (pScreen), - pScreen->width, - pScreen->height, - screen->fb[0].depth, - screen->fb[0].bitsPerPixel, - screen->fb[0].byteStride, - screen->fb[0].frameBuffer); - - /* set the subpixel order */ - - KdSetSubpixelOrder (pScreen, scrpriv->randr); - - if (wasEnabled) - KdEnableScreen (pScreen); - - return TRUE; - - bail4: - EPHYR_LOG("bailed"); - - ephyrUnmapFramebuffer (screen); - *scrpriv = oldscr; - (void) ephyrMapFramebuffer (screen); - - pScreen->width = oldwidth; - pScreen->height = oldheight; - pScreen->mmWidth = oldmmwidth; - pScreen->mmHeight = oldmmheight; - - if (wasEnabled) - KdEnableScreen (pScreen); - return FALSE; -} - -Bool -ephyrRandRInit (ScreenPtr pScreen) -{ - rrScrPrivPtr pScrPriv; - - if (!RRScreenInit (pScreen)) - return FALSE; - - pScrPriv = rrGetScrPriv(pScreen); - pScrPriv->rrGetInfo = ephyrRandRGetInfo; - pScrPriv->rrSetConfig = ephyrRandRSetConfig; - return TRUE; -} -#endif - -Bool -ephyrCreateColormap (ColormapPtr pmap) -{ - return fbInitializeColormap (pmap); -} - -Bool -ephyrInitScreen (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - - EPHYR_LOG ("pScreen->myNum:%d\n", pScreen->myNum) ; - hostx_set_screen_number (screen, pScreen->myNum); - hostx_set_win_title (screen, "(ctrl+shift grabs mouse and keyboard)") ; - pScreen->CreateColormap = ephyrCreateColormap; - -#ifdef XV - if (!ephyrNoXV) { - if (!ephyrInitVideo (pScreen)) { - EPHYR_LOG_ERROR ("failed to initialize xvideo\n") ; - } else { - EPHYR_LOG ("initialized xvideo okay\n") ; - } - } -#endif /*XV*/ - -#ifdef XF86DRI - if (!ephyrNoDRI && !hostx_has_dri ()) { - EPHYR_LOG ("host x does not support DRI. Disabling DRI forwarding\n") ; - ephyrNoDRI = TRUE ; -#ifdef GLXEXT - noGlxVisualInit = FALSE ; -#endif - } - if (!ephyrNoDRI) { - ephyrDRIExtensionInit (pScreen) ; - ephyrHijackGLXExtension () ; - } -#endif - -#ifdef GLXEXT - if (ephyrNoDRI) { - noGlxVisualInit = FALSE ; - } -#endif - - return TRUE; -} - -Bool -ephyrFinishInitScreen (ScreenPtr pScreen) -{ - /* FIXME: Calling this even if not using shadow. - * Seems harmless enough. But may be safer elsewhere. - */ - if (!shadowSetup (pScreen)) - return FALSE; - -#ifdef RANDR - if (!ephyrRandRInit (pScreen)) - return FALSE; -#endif - - return TRUE; -} - -Bool -ephyrCreateResources (ScreenPtr pScreen) -{ - KdScreenPriv(pScreen); - KdScreenInfo *screen = pScreenPriv->screen; - EphyrScrPriv *scrpriv = screen->driver; - - EPHYR_LOG("mark pScreen=%p mynum=%d shadow=%d", - pScreen, pScreen->myNum, scrpriv->shadow); - - if (scrpriv->shadow) - return KdShadowSet (pScreen, - scrpriv->randr, - ephyrShadowUpdate, - ephyrWindowLinear); - else - return ephyrSetInternalDamage(pScreen); -} - -void -ephyrPreserve (KdCardInfo *card) -{ -} - -Bool -ephyrEnable (ScreenPtr pScreen) -{ - return TRUE; -} - -Bool -ephyrDPMS (ScreenPtr pScreen, int mode) -{ - return TRUE; -} - -void -ephyrDisable (ScreenPtr pScreen) -{ -} - -void -ephyrRestore (KdCardInfo *card) -{ -} - -void -ephyrScreenFini (KdScreenInfo *screen) -{ - EphyrScrPriv *scrpriv = screen->driver; - if (scrpriv->shadow) { - KdShadowFbFree (screen, 0); - } - xfree(screen->driver); - screen->driver = NULL; -} - -/* - * Port of Mark McLoughlin's Xnest fix for focus in + modifier bug. - * See https://bugs.freedesktop.org/show_bug.cgi?id=3030 - */ -void -ephyrUpdateModifierState(unsigned int state) -{ -#if 0 - DeviceIntPtr pkeydev; - KeyClassPtr keyc; - int i; - CARD8 mask; - - pkeydev = inputInfo.keyboard; - - if (!pkeydev) - return; - -/* This is pretty broken. - * - * What should happen is that focus out should do as a VT switch does in - * traditional servers: fake releases for all keys (and buttons too, come - * to think of it) currently down. Then, on focus in, get the state from - * the host, and fake keypresses for everything currently down. - * - * So I'm leaving this broken for a little while. Sorry, folks. - * - * -daniels - */ - - keyc = pkeydev->key; - - state = state & 0xff; - - if (keyc->state == state) - return; - - for (i = 0, mask = 1; i < 8; i++, mask <<= 1) - { - int key; - - /* Modifier is down, but shouldn't be */ - if ((keyc->state & mask) && !(state & mask)) - { - int count = keyc->modifierKeyCount[i]; - - for (key = 0; key < MAP_LENGTH; key++) - if (keyc->xkbInfo->desc->map->modmap[key] & mask) - { - int bit; - BYTE *kptr; - - kptr = &keyc->down[key >> 3]; - bit = 1 << (key & 7); - - if (*kptr & bit && ephyrKbd && - ((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled) - KdEnqueueKeyboardEvent(ephyrKbd, key, TRUE); /* release */ - - if (--count == 0) - break; - } - } - - /* Modifier shoud be down, but isn't */ - if (!(keyc->state & mask) && (state & mask)) - for (key = 0; key < MAP_LENGTH; key++) - if (keyc->xkbInfo->desc->map->modmap[key] & mask) - { - if (keyc->xkbInfo->desc->map->modmap[key] & mask && ephyrKbd && - ((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled) - KdEnqueueKeyboardEvent(ephyrKbd, key, FALSE); /* press */ - break; - } - } -#endif -} - -static void -ephyrBlockSigio (void) -{ -#ifdef _MSC_VER - __asm int 3; -#else - sigset_t set; - - sigemptyset (&set); - sigaddset (&set, SIGIO); - sigprocmask (SIG_BLOCK, &set, 0); -#endif -} - -static void -ephyrUnblockSigio (void) -{ -#ifdef _MSC_VER - __asm int 3; -#else - sigset_t set; - - sigemptyset (&set); - sigaddset (&set, SIGIO); - sigprocmask (SIG_UNBLOCK, &set, 0); -#endif -} - -static Bool -ephyrCursorOffScreen(ScreenPtr *ppScreen, int *x, int *y) -{ - return FALSE; -} - -static void -ephyrCrossScreen (ScreenPtr pScreen, Bool entering) -{ -} - -int ephyrCurScreen; /*current event screen*/ - -static void -ephyrWarpCursor (DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) -{ - ephyrBlockSigio (); - ephyrCurScreen = pScreen->myNum; - miPointerWarpCursor (inputInfo.pointer, pScreen, x, y); - ephyrUnblockSigio (); -} - -miPointerScreenFuncRec ephyrPointerScreenFuncs = -{ - ephyrCursorOffScreen, - ephyrCrossScreen, - ephyrWarpCursor, - NULL, - NULL -}; - -#ifdef XF86DRI -/** - * find if the remote window denoted by a_remote - * is paired with an internal Window within the Xephyr server. - * If the remove window is paired with an internal window, send an - * expose event to the client insterested in the internal window expose event. - * - * Pairing happens when a drawable inside Xephyr is associated with - * a GL surface in a DRI environment. - * Look at the function ProcXF86DRICreateDrawable in ephyrdriext.c to - * know a paired window is created. - * - * This is useful to make GL drawables (only windows for now) handle - * expose events and send those events to clients. - */ -static void -ephyrExposePairedWindow (int a_remote) -{ - EphyrWindowPair *pair = NULL; - RegionRec reg; - ScreenPtr screen; - - if (!findWindowPairFromRemote (a_remote, &pair)) { - EPHYR_LOG ("did not find a pair for this window\n"); - return; - } - screen = pair->local->drawable.pScreen; - REGION_NULL (screen, ®); - REGION_COPY (screen, ®, &pair->local->clipList); - screen->WindowExposures (pair->local, ®, NullRegion); - REGION_UNINIT (screen, ®); -} -#endif /* XF86DRI */ - -void -ephyrPoll(void) -{ - EphyrHostXEvent ev; - - while (hostx_get_event(&ev)) - { - switch (ev.type) - { - case EPHYR_EV_MOUSE_MOTION: - if (!ephyrMouse || - !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled) { - EPHYR_LOG ("skipping mouse motion:%d\n", ephyrCurScreen) ; - continue; - } - { - if (ev.data.mouse_motion.screen >=0 - && (ephyrCurScreen != ev.data.mouse_motion.screen)) - { - EPHYR_LOG ("warping mouse cursor. " - "cur_screen%d, motion_screen:%d\n", - ephyrCurScreen, ev.data.mouse_motion.screen) ; - if (ev.data.mouse_motion.screen >= 0) - { - ephyrWarpCursor - (inputInfo.pointer, screenInfo.screens[ev.data.mouse_motion.screen], - ev.data.mouse_motion.x, - ev.data.mouse_motion.y ); - } - } - else - { - int x=0, y=0; -#ifdef XF86DRI - EphyrWindowPair *pair = NULL; -#endif - EPHYR_LOG ("enqueuing mouse motion:%d\n", ephyrCurScreen) ; - x = ev.data.mouse_motion.x; - y = ev.data.mouse_motion.y; - EPHYR_LOG ("initial (x,y):(%d,%d)\n", x, y) ; -#ifdef XF86DRI - EPHYR_LOG ("is this window peered by a gl drawable ?\n") ; - if (findWindowPairFromRemote (ev.data.mouse_motion.window, - &pair)) - { - EPHYR_LOG ("yes, it is peered\n") ; - x += pair->local->drawable.x; - y += pair->local->drawable.y; - } - else - { - EPHYR_LOG ("no, it is not peered\n") ; - } - EPHYR_LOG ("final (x,y):(%d,%d)\n", x, y) ; -#endif - KdEnqueuePointerEvent(ephyrMouse, mouseState, x, y, 0); - } - } - break; - - case EPHYR_EV_MOUSE_PRESS: - if (!ephyrMouse || - !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled) { - EPHYR_LOG ("skipping mouse press:%d\n", ephyrCurScreen) ; - continue; - } - EPHYR_LOG ("enqueuing mouse press:%d\n", ephyrCurScreen) ; - ephyrUpdateModifierState(ev.key_state); - mouseState |= ev.data.mouse_down.button_num; - KdEnqueuePointerEvent(ephyrMouse, mouseState|KD_MOUSE_DELTA, 0, 0, 0); - break; - - case EPHYR_EV_MOUSE_RELEASE: - if (!ephyrMouse || - !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled) - continue; - ephyrUpdateModifierState(ev.key_state); - mouseState &= ~ev.data.mouse_up.button_num; - EPHYR_LOG ("enqueuing mouse release:%d\n", ephyrCurScreen) ; - KdEnqueuePointerEvent(ephyrMouse, mouseState|KD_MOUSE_DELTA, 0, 0, 0); - break; - - case EPHYR_EV_KEY_PRESS: - if (!ephyrKbd || - !((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled) - continue; - ephyrUpdateModifierState(ev.key_state); - KdEnqueueKeyboardEvent (ephyrKbd, ev.data.key_down.scancode, FALSE); - break; - - case EPHYR_EV_KEY_RELEASE: - if (!ephyrKbd || - !((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled) - continue; - KdEnqueueKeyboardEvent (ephyrKbd, ev.data.key_up.scancode, TRUE); - break; - -#ifdef XF86DRI - case EPHYR_EV_EXPOSE: - /* - * We only receive expose events when the expose event have - * be generated for a drawable that is a host X window managed - * by Xephyr. Host X windows managed by Xephyr exists for instance - * when Xephyr is asked to create a GL drawable in a DRI environment. - */ - ephyrExposePairedWindow (ev.data.expose.window); - break; -#endif /* XF86DRI */ - - default: - break; - } - } -} - -void -ephyrCardFini (KdCardInfo *card) -{ - EphyrPriv *priv = card->driver; - xfree (priv); -} - -void -ephyrGetColors (ScreenPtr pScreen, int fb, int n, xColorItem *pdefs) -{ - /* XXX Not sure if this is right */ - - EPHYR_LOG("mark"); - - while (n--) - { - pdefs->red = 0; - pdefs->green = 0; - pdefs->blue = 0; - pdefs++; - } - -} - -void -ephyrPutColors (ScreenPtr pScreen, int fb, int n, xColorItem *pdefs) -{ - int min, max, p; - - /* XXX Not sure if this is right */ - - min = 256; - max = 0; - - while (n--) - { - p = pdefs->pixel; - if (p < min) - min = p; - if (p > max) - max = p; - - hostx_set_cmap_entry(p, - pdefs->red >> 8, - pdefs->green >> 8, - pdefs->blue >> 8); - pdefs++; - } -} - -/* Mouse calls */ - -static Status -MouseInit (KdPointerInfo *pi) -{ - pi->driverPrivate = (EphyrPointerPrivate *) - xcalloc(sizeof(EphyrPointerPrivate), 1); - ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = FALSE; - pi->nAxes = 3; - pi->nButtons = 32; - pi->name = strdup("Xephyr virtual mouse"); - ephyrMouse = pi; - return Success; -} - -static Status -MouseEnable (KdPointerInfo *pi) -{ - ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = TRUE; - return Success; -} - -static void -MouseDisable (KdPointerInfo *pi) -{ - ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = FALSE; - return; -} - -static void -MouseFini (KdPointerInfo *pi) -{ - ephyrMouse = NULL; - return; -} - -KdPointerDriver EphyrMouseDriver = { - "ephyr", - MouseInit, - MouseEnable, - MouseDisable, - MouseFini, - NULL, -}; - -/* Keyboard */ - -static Status -EphyrKeyboardInit (KdKeyboardInfo *ki) -{ - ki->driverPrivate = (EphyrKbdPrivate *) - xcalloc(sizeof(EphyrKbdPrivate), 1); - hostx_load_keymap(); - if (!ephyrKeySyms.map) { - ErrorF("Couldn't load keymap from host\n"); - return BadAlloc; - } - ki->minScanCode = ephyrKeySyms.minKeyCode; - ki->maxScanCode = ephyrKeySyms.maxKeyCode; - ki->name = strdup("Xephyr virtual keyboard"); - ephyrKbd = ki; - return Success; -} - -static Status -EphyrKeyboardEnable (KdKeyboardInfo *ki) -{ - ((EphyrKbdPrivate *)ki->driverPrivate)->enabled = TRUE; - - return Success; -} - -static void -EphyrKeyboardDisable (KdKeyboardInfo *ki) -{ - ((EphyrKbdPrivate *)ki->driverPrivate)->enabled = FALSE; -} - -static void -EphyrKeyboardFini (KdKeyboardInfo *ki) -{ - ephyrKbd = NULL; - return; -} - -static void -EphyrKeyboardLeds (KdKeyboardInfo *ki, int leds) -{ -} - -static void -EphyrKeyboardBell (KdKeyboardInfo *ki, int volume, int frequency, int duration) -{ -} - - -KdKeyboardDriver EphyrKeyboardDriver = { - "ephyr", - EphyrKeyboardInit, - EphyrKeyboardEnable, - EphyrKeyboardLeds, - EphyrKeyboardBell, - EphyrKeyboardDisable, - EphyrKeyboardFini, - NULL, -}; +/*
+ * Xephyr - A kdrive X server thats runs in a host X window.
+ * Authored by Matthew Allum <mallum@openedhand.com>
+ *
+ * Copyright © 2004 Nokia
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Nokia not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. Nokia makes no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * NOKIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL NOKIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <kdrive-config.h>
+#endif
+#include "ephyr.h"
+
+#include "inputstr.h"
+#include "scrnintstr.h"
+#include "ephyrlog.h"
+
+#ifdef XF86DRI
+#include "ephyrdri.h"
+#include "ephyrdriext.h"
+#include "ephyrglxext.h"
+#endif /* XF86DRI */
+
+extern int KdTsPhyScreen;
+#ifdef GLXEXT
+extern Bool noGlxVisualInit;
+#endif
+
+KdKeyboardInfo *ephyrKbd;
+KdPointerInfo *ephyrMouse;
+EphyrKeySyms ephyrKeySyms;
+Bool ephyrNoDRI=FALSE ;
+Bool ephyrNoXV=FALSE ;
+
+static int mouseState = 0;
+
+typedef struct _EphyrInputPrivate {
+ Bool enabled;
+} EphyrKbdPrivate, EphyrPointerPrivate;
+
+Bool EphyrWantGrayScale = 0;
+
+
+Bool
+ephyrInitialize (KdCardInfo *card, EphyrPriv *priv)
+{
+#ifdef _MSC_VER
+ __asm int 3;
+#else
+ OsSignal(SIGUSR1, hostx_handle_signal);
+#endif
+ priv->base = 0;
+ priv->bytes_per_line = 0;
+ return TRUE;
+}
+
+Bool
+ephyrCardInit (KdCardInfo *card)
+{
+ EphyrPriv *priv;
+
+ priv = (EphyrPriv *) xalloc (sizeof (EphyrPriv));
+ if (!priv)
+ return FALSE;
+
+ if (!ephyrInitialize (card, priv))
+ {
+ xfree (priv);
+ return FALSE;
+ }
+ card->driver = priv;
+
+ return TRUE;
+}
+
+Bool
+ephyrScreenInitialize (KdScreenInfo *screen, EphyrScrPriv *scrpriv)
+{
+ int width = 640, height = 480;
+ CARD32 redMask, greenMask, blueMask;
+
+ if (hostx_want_screen_size(screen, &width, &height)
+ || !screen->width || !screen->height)
+ {
+ screen->width = width;
+ screen->height = height;
+ }
+
+ if (EphyrWantGrayScale)
+ screen->fb[0].depth = 8;
+
+ if (screen->fb[0].depth && screen->fb[0].depth != hostx_get_depth())
+ {
+ if (screen->fb[0].depth < hostx_get_depth()
+ && (screen->fb[0].depth == 24 || screen->fb[0].depth == 16
+ || screen->fb[0].depth == 8))
+ {
+ hostx_set_server_depth(screen, screen->fb[0].depth);
+ }
+ else
+ ErrorF("\nXephyr: requested screen depth not supported, setting to match hosts.\n");
+ }
+
+ screen->fb[0].depth = hostx_get_server_depth(screen);
+ screen->rate = 72;
+
+ if (screen->fb[0].depth <= 8)
+ {
+ if (EphyrWantGrayScale)
+ screen->fb[0].visuals = ((1 << StaticGray) | (1 << GrayScale));
+ else
+ screen->fb[0].visuals = ((1 << StaticGray) |
+ (1 << GrayScale) |
+ (1 << StaticColor) |
+ (1 << PseudoColor) |
+ (1 << TrueColor) |
+ (1 << DirectColor));
+
+ screen->fb[0].redMask = 0x00;
+ screen->fb[0].greenMask = 0x00;
+ screen->fb[0].blueMask = 0x00;
+ screen->fb[0].depth = 8;
+ screen->fb[0].bitsPerPixel = 8;
+ }
+ else
+ {
+ screen->fb[0].visuals = (1 << TrueColor);
+
+ if (screen->fb[0].depth <= 15)
+ {
+ screen->fb[0].depth = 15;
+ screen->fb[0].bitsPerPixel = 16;
+ }
+ else if (screen->fb[0].depth <= 16)
+ {
+ screen->fb[0].depth = 16;
+ screen->fb[0].bitsPerPixel = 16;
+ }
+ else if (screen->fb[0].depth <= 24)
+ {
+ screen->fb[0].depth = 24;
+ screen->fb[0].bitsPerPixel = 32;
+ }
+ else if (screen->fb[0].depth <= 30)
+ {
+ screen->fb[0].depth = 30;
+ screen->fb[0].bitsPerPixel = 32;
+ }
+ else
+ {
+ ErrorF("\nXephyr: Unsupported screen depth %d\n",
+ screen->fb[0].depth);
+ return FALSE;
+ }
+
+ hostx_get_visual_masks (screen, &redMask, &greenMask, &blueMask);
+
+ screen->fb[0].redMask = (Pixel) redMask;
+ screen->fb[0].greenMask = (Pixel) greenMask;
+ screen->fb[0].blueMask = (Pixel) blueMask;
+
+ }
+
+ scrpriv->randr = screen->randr;
+
+ return ephyrMapFramebuffer (screen);
+}
+
+Bool
+ephyrScreenInit (KdScreenInfo *screen)
+{
+ EphyrScrPriv *scrpriv;
+
+ scrpriv = xcalloc (1, sizeof (EphyrScrPriv));
+
+ if (!scrpriv)
+ return FALSE;
+
+ screen->driver = scrpriv;
+
+ if (!ephyrScreenInitialize (screen, scrpriv))
+ {
+ screen->driver = 0;
+ xfree (scrpriv);
+ return FALSE;
+ }
+
+ return TRUE;
+}
+
+void*
+ephyrWindowLinear (ScreenPtr pScreen,
+ CARD32 row,
+ CARD32 offset,
+ int mode,
+ CARD32 *size,
+ void *closure)
+{
+ KdScreenPriv(pScreen);
+ EphyrPriv *priv = pScreenPriv->card->driver;
+
+ if (!pScreenPriv->enabled)
+ return 0;
+
+ *size = priv->bytes_per_line;
+ return priv->base + row * priv->bytes_per_line + offset;
+}
+
+Bool
+ephyrMapFramebuffer (KdScreenInfo *screen)
+{
+ EphyrScrPriv *scrpriv = screen->driver;
+ EphyrPriv *priv = screen->card->driver;
+ KdPointerMatrix m;
+ int buffer_height;
+
+ EPHYR_LOG("screen->width: %d, screen->height: %d index=%d",
+ screen->width, screen->height, screen->mynum);
+
+ KdComputePointerMatrix (&m, scrpriv->randr, screen->width, screen->height);
+ KdSetPointerMatrix (&m);
+
+ priv->bytes_per_line = ((screen->width * screen->fb[0].bitsPerPixel + 31) >> 5) << 2;
+
+ /* point the framebuffer to the data in an XImage */
+ /* If fakexa is enabled, allocate a larger buffer so that fakexa has space to
+ * put offscreen pixmaps.
+ */
+ if (ephyrFuncs.initAccel == NULL)
+ buffer_height = screen->height;
+ else
+ buffer_height = 3 * screen->height;
+
+ priv->base = hostx_screen_init (screen, screen->width, screen->height, buffer_height);
+
+ screen->memory_base = (CARD8 *) (priv->base);
+ screen->memory_size = priv->bytes_per_line * buffer_height;
+ screen->off_screen_base = priv->bytes_per_line * screen->height;
+
+ if ((scrpriv->randr & RR_Rotate_0) && !(scrpriv->randr & RR_Reflect_All))
+ {
+ scrpriv->shadow = FALSE;
+
+ screen->fb[0].byteStride = priv->bytes_per_line;
+ screen->fb[0].pixelStride = screen->width;
+ screen->fb[0].frameBuffer = (CARD8 *) (priv->base);
+ }
+ else
+ {
+ /* Rotated/Reflected so we need to use shadow fb */
+ scrpriv->shadow = TRUE;
+
+ EPHYR_LOG("allocing shadow");
+
+ KdShadowFbAlloc (screen, 0,
+ scrpriv->randr & (RR_Rotate_90|RR_Rotate_270));
+ }
+
+ return TRUE;
+}
+
+void
+ephyrSetScreenSizes (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+
+ if (scrpriv->randr & (RR_Rotate_0|RR_Rotate_180))
+ {
+ pScreen->width = screen->width;
+ pScreen->height = screen->height;
+ pScreen->mmWidth = screen->width_mm;
+ pScreen->mmHeight = screen->height_mm;
+ }
+ else
+ {
+ pScreen->width = screen->height;
+ pScreen->height = screen->width;
+ pScreen->mmWidth = screen->height_mm;
+ pScreen->mmHeight = screen->width_mm;
+ }
+}
+
+Bool
+ephyrUnmapFramebuffer (KdScreenInfo *screen)
+{
+ EphyrScrPriv *scrpriv = screen->driver;
+
+ if (scrpriv->shadow)
+ KdShadowFbFree (screen, 0);
+
+ /* Note, priv->base will get freed when XImage recreated */
+
+ return TRUE;
+}
+
+void
+ephyrShadowUpdate (ScreenPtr pScreen, shadowBufPtr pBuf)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+
+ EPHYR_LOG("slow paint");
+
+ /* FIXME: Slow Rotated/Reflected updates could be much
+ * much faster efficiently updating via tranforming
+ * pBuf->pDamage regions
+ */
+ shadowUpdateRotatePacked(pScreen, pBuf);
+ hostx_paint_rect(screen, 0,0,0,0, screen->width, screen->height);
+}
+
+static void
+ephyrInternalDamageRedisplay (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+ RegionPtr pRegion;
+
+ if (!scrpriv || !scrpriv->pDamage)
+ return;
+
+ pRegion = DamageRegion (scrpriv->pDamage);
+
+ if (REGION_NOTEMPTY (pScreen, pRegion))
+ {
+ int nbox;
+ BoxPtr pbox;
+
+ nbox = REGION_NUM_RECTS (pRegion);
+ pbox = REGION_RECTS (pRegion);
+
+ while (nbox--)
+ {
+ hostx_paint_rect(screen,
+ pbox->x1, pbox->y1,
+ pbox->x1, pbox->y1,
+ pbox->x2 - pbox->x1,
+ pbox->y2 - pbox->y1);
+ pbox++;
+ }
+ DamageEmpty (scrpriv->pDamage);
+ }
+}
+
+static void
+ephyrInternalDamageBlockHandler (pointer data,
+ OSTimePtr pTimeout,
+ pointer pRead)
+{
+ ScreenPtr pScreen = (ScreenPtr) data;
+
+ ephyrInternalDamageRedisplay (pScreen);
+}
+
+static void
+ephyrInternalDamageWakeupHandler (pointer data, int i, pointer LastSelectMask)
+{
+ /* FIXME: Not needed ? */
+}
+
+Bool
+ephyrSetInternalDamage (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+ PixmapPtr pPixmap = NULL;
+
+ scrpriv->pDamage = DamageCreate ((DamageReportFunc) 0,
+ (DamageDestroyFunc) 0,
+ DamageReportNone,
+ TRUE,
+ pScreen,
+ pScreen);
+
+ if (!RegisterBlockAndWakeupHandlers (ephyrInternalDamageBlockHandler,
+ ephyrInternalDamageWakeupHandler,
+ (pointer) pScreen))
+ return FALSE;
+
+ pPixmap = (*pScreen->GetScreenPixmap) (pScreen);
+
+ DamageRegister (&pPixmap->drawable, scrpriv->pDamage);
+
+ return TRUE;
+}
+
+void
+ephyrUnsetInternalDamage (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+ PixmapPtr pPixmap = NULL;
+
+ pPixmap = (*pScreen->GetScreenPixmap) (pScreen);
+ DamageUnregister (&pPixmap->drawable, scrpriv->pDamage);
+ DamageDestroy (scrpriv->pDamage);
+
+ RemoveBlockAndWakeupHandlers (ephyrInternalDamageBlockHandler,
+ ephyrInternalDamageWakeupHandler,
+ (pointer) pScreen);
+}
+
+#ifdef RANDR
+Bool
+ephyrRandRGetInfo (ScreenPtr pScreen, Rotation *rotations)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+ RRScreenSizePtr pSize;
+ Rotation randr;
+ int n = 0;
+
+ struct { int width, height; } sizes[] =
+ {
+ { 1600, 1200 },
+ { 1400, 1050 },
+ { 1280, 960 },
+ { 1280, 1024 },
+ { 1152, 864 },
+ { 1024, 768 },
+ { 832, 624 },
+ { 800, 600 },
+ { 720, 400 },
+ { 480, 640 },
+ { 640, 480 },
+ { 640, 400 },
+ { 320, 240 },
+ { 240, 320 },
+ { 160, 160 },
+ { 0, 0 }
+ };
+
+ EPHYR_LOG("mark");
+
+ *rotations = RR_Rotate_All|RR_Reflect_All;
+
+ if (!hostx_want_preexisting_window (screen)
+ && !hostx_want_fullscreen ()) /* only if no -parent switch */
+ {
+ while (sizes[n].width != 0 && sizes[n].height != 0)
+ {
+ RRRegisterSize (pScreen,
+ sizes[n].width,
+ sizes[n].height,
+ (sizes[n].width * screen->width_mm)/screen->width,
+ (sizes[n].height *screen->height_mm)/screen->height
+ );
+ n++;
+ }
+ }
+
+ pSize = RRRegisterSize (pScreen,
+ screen->width,
+ screen->height,
+ screen->width_mm,
+ screen->height_mm);
+
+ randr = KdSubRotation (scrpriv->randr, screen->randr);
+
+ RRSetCurrentConfig (pScreen, randr, 0, pSize);
+
+ return TRUE;
+}
+
+Bool
+ephyrRandRSetConfig (ScreenPtr pScreen,
+ Rotation randr,
+ int rate,
+ RRScreenSizePtr pSize)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+ Bool wasEnabled = pScreenPriv->enabled;
+ EphyrScrPriv oldscr;
+ int oldwidth, oldheight, oldmmwidth, oldmmheight;
+ Bool oldshadow;
+ int newwidth, newheight;
+
+ if (screen->randr & (RR_Rotate_0|RR_Rotate_180))
+ {
+ newwidth = pSize->width;
+ newheight = pSize->height;
+ }
+ else
+ {
+ newwidth = pSize->height;
+ newheight = pSize->width;
+ }
+
+ if (wasEnabled)
+ KdDisableScreen (pScreen);
+
+ oldscr = *scrpriv;
+
+ oldwidth = screen->width;
+ oldheight = screen->height;
+ oldmmwidth = pScreen->mmWidth;
+ oldmmheight = pScreen->mmHeight;
+ oldshadow = scrpriv->shadow;
+
+ /*
+ * Set new configuration
+ */
+
+ scrpriv->randr = KdAddRotation (screen->randr, randr);
+
+ ephyrUnmapFramebuffer (screen);
+
+ screen->width = newwidth;
+ screen->height = newheight;
+
+ if (!ephyrMapFramebuffer (screen))
+ goto bail4;
+
+ /* FIXME below should go in own call */
+
+ if (oldshadow)
+ KdShadowUnset (screen->pScreen);
+ else
+ ephyrUnsetInternalDamage(screen->pScreen);
+
+ if (scrpriv->shadow)
+ {
+ if (!KdShadowSet (screen->pScreen,
+ scrpriv->randr,
+ ephyrShadowUpdate,
+ ephyrWindowLinear))
+ goto bail4;
+ }
+ else
+ {
+ /* Without shadow fb ( non rotated ) we need
+ * to use damage to efficiently update display
+ * via signal regions what to copy from 'fb'.
+ */
+ if (!ephyrSetInternalDamage(screen->pScreen))
+ goto bail4;
+ }
+
+ ephyrSetScreenSizes (screen->pScreen);
+
+ /*
+ * Set frame buffer mapping
+ */
+ (*pScreen->ModifyPixmapHeader) (fbGetScreenPixmap (pScreen),
+ pScreen->width,
+ pScreen->height,
+ screen->fb[0].depth,
+ screen->fb[0].bitsPerPixel,
+ screen->fb[0].byteStride,
+ screen->fb[0].frameBuffer);
+
+ /* set the subpixel order */
+
+ KdSetSubpixelOrder (pScreen, scrpriv->randr);
+
+ if (wasEnabled)
+ KdEnableScreen (pScreen);
+
+ return TRUE;
+
+ bail4:
+ EPHYR_LOG("bailed");
+
+ ephyrUnmapFramebuffer (screen);
+ *scrpriv = oldscr;
+ (void) ephyrMapFramebuffer (screen);
+
+ pScreen->width = oldwidth;
+ pScreen->height = oldheight;
+ pScreen->mmWidth = oldmmwidth;
+ pScreen->mmHeight = oldmmheight;
+
+ if (wasEnabled)
+ KdEnableScreen (pScreen);
+ return FALSE;
+}
+
+Bool
+ephyrRandRInit (ScreenPtr pScreen)
+{
+ rrScrPrivPtr pScrPriv;
+
+ if (!RRScreenInit (pScreen))
+ return FALSE;
+
+ pScrPriv = rrGetScrPriv(pScreen);
+ pScrPriv->rrGetInfo = ephyrRandRGetInfo;
+ pScrPriv->rrSetConfig = ephyrRandRSetConfig;
+ return TRUE;
+}
+#endif
+
+Bool
+ephyrCreateColormap (ColormapPtr pmap)
+{
+ return fbInitializeColormap (pmap);
+}
+
+Bool
+ephyrInitScreen (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+
+ EPHYR_LOG ("pScreen->myNum:%d\n", pScreen->myNum) ;
+ hostx_set_screen_number (screen, pScreen->myNum);
+ hostx_set_win_title (screen, "(ctrl+shift grabs mouse and keyboard)") ;
+ pScreen->CreateColormap = ephyrCreateColormap;
+
+#ifdef XV
+ if (!ephyrNoXV) {
+ if (!ephyrInitVideo (pScreen)) {
+ EPHYR_LOG_ERROR ("failed to initialize xvideo\n") ;
+ } else {
+ EPHYR_LOG ("initialized xvideo okay\n") ;
+ }
+ }
+#endif /*XV*/
+
+#ifdef XF86DRI
+ if (!ephyrNoDRI && !hostx_has_dri ()) {
+ EPHYR_LOG ("host x does not support DRI. Disabling DRI forwarding\n") ;
+ ephyrNoDRI = TRUE ;
+#ifdef GLXEXT
+ noGlxVisualInit = FALSE ;
+#endif
+ }
+ if (!ephyrNoDRI) {
+ ephyrDRIExtensionInit (pScreen) ;
+ ephyrHijackGLXExtension () ;
+ }
+#endif
+
+#ifdef GLXEXT
+ if (ephyrNoDRI) {
+ noGlxVisualInit = FALSE ;
+ }
+#endif
+
+ return TRUE;
+}
+
+Bool
+ephyrFinishInitScreen (ScreenPtr pScreen)
+{
+ /* FIXME: Calling this even if not using shadow.
+ * Seems harmless enough. But may be safer elsewhere.
+ */
+ if (!shadowSetup (pScreen))
+ return FALSE;
+
+#ifdef RANDR
+ if (!ephyrRandRInit (pScreen))
+ return FALSE;
+#endif
+
+ return TRUE;
+}
+
+Bool
+ephyrCreateResources (ScreenPtr pScreen)
+{
+ KdScreenPriv(pScreen);
+ KdScreenInfo *screen = pScreenPriv->screen;
+ EphyrScrPriv *scrpriv = screen->driver;
+
+ EPHYR_LOG("mark pScreen=%p mynum=%d shadow=%d",
+ pScreen, pScreen->myNum, scrpriv->shadow);
+
+ if (scrpriv->shadow)
+ return KdShadowSet (pScreen,
+ scrpriv->randr,
+ ephyrShadowUpdate,
+ ephyrWindowLinear);
+ else
+ return ephyrSetInternalDamage(pScreen);
+}
+
+void
+ephyrPreserve (KdCardInfo *card)
+{
+}
+
+Bool
+ephyrEnable (ScreenPtr pScreen)
+{
+ return TRUE;
+}
+
+Bool
+ephyrDPMS (ScreenPtr pScreen, int mode)
+{
+ return TRUE;
+}
+
+void
+ephyrDisable (ScreenPtr pScreen)
+{
+}
+
+void
+ephyrRestore (KdCardInfo *card)
+{
+}
+
+void
+ephyrScreenFini (KdScreenInfo *screen)
+{
+ EphyrScrPriv *scrpriv = screen->driver;
+ if (scrpriv->shadow) {
+ KdShadowFbFree (screen, 0);
+ }
+ xfree(screen->driver);
+ screen->driver = NULL;
+}
+
+/*
+ * Port of Mark McLoughlin's Xnest fix for focus in + modifier bug.
+ * See https://bugs.freedesktop.org/show_bug.cgi?id=3030
+ */
+void
+ephyrUpdateModifierState(unsigned int state)
+{
+#if 0
+ DeviceIntPtr pkeydev;
+ KeyClassPtr keyc;
+ int i;
+ CARD8 mask;
+
+ pkeydev = inputInfo.keyboard;
+
+ if (!pkeydev)
+ return;
+
+/* This is pretty broken.
+ *
+ * What should happen is that focus out should do as a VT switch does in
+ * traditional servers: fake releases for all keys (and buttons too, come
+ * to think of it) currently down. Then, on focus in, get the state from
+ * the host, and fake keypresses for everything currently down.
+ *
+ * So I'm leaving this broken for a little while. Sorry, folks.
+ *
+ * -daniels
+ */
+
+ keyc = pkeydev->key;
+
+ state = state & 0xff;
+
+ if (keyc->state == state)
+ return;
+
+ for (i = 0, mask = 1; i < 8; i++, mask <<= 1)
+ {
+ int key;
+
+ /* Modifier is down, but shouldn't be */
+ if ((keyc->state & mask) && !(state & mask))
+ {
+ int count = keyc->modifierKeyCount[i];
+
+ for (key = 0; key < MAP_LENGTH; key++)
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask)
+ {
+ int bit;
+ BYTE *kptr;
+
+ kptr = &keyc->down[key >> 3];
+ bit = 1 << (key & 7);
+
+ if (*kptr & bit && ephyrKbd &&
+ ((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled)
+ KdEnqueueKeyboardEvent(ephyrKbd, key, TRUE); /* release */
+
+ if (--count == 0)
+ break;
+ }
+ }
+
+ /* Modifier shoud be down, but isn't */
+ if (!(keyc->state & mask) && (state & mask))
+ for (key = 0; key < MAP_LENGTH; key++)
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask)
+ {
+ if (keyc->xkbInfo->desc->map->modmap[key] & mask && ephyrKbd &&
+ ((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled)
+ KdEnqueueKeyboardEvent(ephyrKbd, key, FALSE); /* press */
+ break;
+ }
+ }
+#endif
+}
+
+static void
+ephyrBlockSigio (void)
+{
+#ifdef _MSC_VER
+ __asm int 3;
+#else
+ sigset_t set;
+
+ sigemptyset (&set);
+ sigaddset (&set, SIGIO);
+ sigprocmask (SIG_BLOCK, &set, 0);
+#endif
+}
+
+static void
+ephyrUnblockSigio (void)
+{
+#ifdef _MSC_VER
+ __asm int 3;
+#else
+ sigset_t set;
+
+ sigemptyset (&set);
+ sigaddset (&set, SIGIO);
+ sigprocmask (SIG_UNBLOCK, &set, 0);
+#endif
+}
+
+static Bool
+ephyrCursorOffScreen(ScreenPtr *ppScreen, int *x, int *y)
+{
+ return FALSE;
+}
+
+static void
+ephyrCrossScreen (ScreenPtr pScreen, Bool entering)
+{
+}
+
+int ephyrCurScreen; /*current event screen*/
+
+static void
+ephyrWarpCursor (DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y)
+{
+ ephyrBlockSigio ();
+ ephyrCurScreen = pScreen->myNum;
+ miPointerWarpCursor (inputInfo.pointer, pScreen, x, y);
+ ephyrUnblockSigio ();
+}
+
+miPointerScreenFuncRec ephyrPointerScreenFuncs =
+{
+ ephyrCursorOffScreen,
+ ephyrCrossScreen,
+ ephyrWarpCursor,
+ NULL,
+ NULL
+};
+
+#ifdef XF86DRI
+/**
+ * find if the remote window denoted by a_remote
+ * is paired with an internal Window within the Xephyr server.
+ * If the remove window is paired with an internal window, send an
+ * expose event to the client insterested in the internal window expose event.
+ *
+ * Pairing happens when a drawable inside Xephyr is associated with
+ * a GL surface in a DRI environment.
+ * Look at the function ProcXF86DRICreateDrawable in ephyrdriext.c to
+ * know a paired window is created.
+ *
+ * This is useful to make GL drawables (only windows for now) handle
+ * expose events and send those events to clients.
+ */
+static void
+ephyrExposePairedWindow (int a_remote)
+{
+ EphyrWindowPair *pair = NULL;
+ RegionRec reg;
+ ScreenPtr screen;
+
+ if (!findWindowPairFromRemote (a_remote, &pair)) {
+ EPHYR_LOG ("did not find a pair for this window\n");
+ return;
+ }
+ screen = pair->local->drawable.pScreen;
+ REGION_NULL (screen, ®);
+ REGION_COPY (screen, ®, &pair->local->clipList);
+ screen->WindowExposures (pair->local, ®, NullRegion);
+ REGION_UNINIT (screen, ®);
+}
+#endif /* XF86DRI */
+
+void
+ephyrPoll(void)
+{
+ EphyrHostXEvent ev;
+
+ while (hostx_get_event(&ev))
+ {
+ switch (ev.type)
+ {
+ case EPHYR_EV_MOUSE_MOTION:
+ if (!ephyrMouse ||
+ !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled) {
+ EPHYR_LOG ("skipping mouse motion:%d\n", ephyrCurScreen) ;
+ continue;
+ }
+ {
+ if (ev.data.mouse_motion.screen >=0
+ && (ephyrCurScreen != ev.data.mouse_motion.screen))
+ {
+ EPHYR_LOG ("warping mouse cursor. "
+ "cur_screen%d, motion_screen:%d\n",
+ ephyrCurScreen, ev.data.mouse_motion.screen) ;
+ if (ev.data.mouse_motion.screen >= 0)
+ {
+ ephyrWarpCursor
+ (inputInfo.pointer, screenInfo.screens[ev.data.mouse_motion.screen],
+ ev.data.mouse_motion.x,
+ ev.data.mouse_motion.y );
+ }
+ }
+ else
+ {
+ int x=0, y=0;
+#ifdef XF86DRI
+ EphyrWindowPair *pair = NULL;
+#endif
+ EPHYR_LOG ("enqueuing mouse motion:%d\n", ephyrCurScreen) ;
+ x = ev.data.mouse_motion.x;
+ y = ev.data.mouse_motion.y;
+ EPHYR_LOG ("initial (x,y):(%d,%d)\n", x, y) ;
+#ifdef XF86DRI
+ EPHYR_LOG ("is this window peered by a gl drawable ?\n") ;
+ if (findWindowPairFromRemote (ev.data.mouse_motion.window,
+ &pair))
+ {
+ EPHYR_LOG ("yes, it is peered\n") ;
+ x += pair->local->drawable.x;
+ y += pair->local->drawable.y;
+ }
+ else
+ {
+ EPHYR_LOG ("no, it is not peered\n") ;
+ }
+ EPHYR_LOG ("final (x,y):(%d,%d)\n", x, y) ;
+#endif
+ KdEnqueuePointerEvent(ephyrMouse, mouseState, x, y, 0);
+ }
+ }
+ break;
+
+ case EPHYR_EV_MOUSE_PRESS:
+ if (!ephyrMouse ||
+ !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled) {
+ EPHYR_LOG ("skipping mouse press:%d\n", ephyrCurScreen) ;
+ continue;
+ }
+ EPHYR_LOG ("enqueuing mouse press:%d\n", ephyrCurScreen) ;
+ ephyrUpdateModifierState(ev.key_state);
+ mouseState |= ev.data.mouse_down.button_num;
+ KdEnqueuePointerEvent(ephyrMouse, mouseState|KD_MOUSE_DELTA, 0, 0, 0);
+ break;
+
+ case EPHYR_EV_MOUSE_RELEASE:
+ if (!ephyrMouse ||
+ !((EphyrPointerPrivate *)ephyrMouse->driverPrivate)->enabled)
+ continue;
+ ephyrUpdateModifierState(ev.key_state);
+ mouseState &= ~ev.data.mouse_up.button_num;
+ EPHYR_LOG ("enqueuing mouse release:%d\n", ephyrCurScreen) ;
+ KdEnqueuePointerEvent(ephyrMouse, mouseState|KD_MOUSE_DELTA, 0, 0, 0);
+ break;
+
+ case EPHYR_EV_KEY_PRESS:
+ if (!ephyrKbd ||
+ !((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled)
+ continue;
+ ephyrUpdateModifierState(ev.key_state);
+ KdEnqueueKeyboardEvent (ephyrKbd, ev.data.key_down.scancode, FALSE);
+ break;
+
+ case EPHYR_EV_KEY_RELEASE:
+ if (!ephyrKbd ||
+ !((EphyrKbdPrivate *)ephyrKbd->driverPrivate)->enabled)
+ continue;
+ KdEnqueueKeyboardEvent (ephyrKbd, ev.data.key_up.scancode, TRUE);
+ break;
+
+#ifdef XF86DRI
+ case EPHYR_EV_EXPOSE:
+ /*
+ * We only receive expose events when the expose event have
+ * be generated for a drawable that is a host X window managed
+ * by Xephyr. Host X windows managed by Xephyr exists for instance
+ * when Xephyr is asked to create a GL drawable in a DRI environment.
+ */
+ ephyrExposePairedWindow (ev.data.expose.window);
+ break;
+#endif /* XF86DRI */
+
+ default:
+ break;
+ }
+ }
+}
+
+void
+ephyrCardFini (KdCardInfo *card)
+{
+ EphyrPriv *priv = card->driver;
+ xfree (priv);
+}
+
+void
+ephyrGetColors (ScreenPtr pScreen, int fb, int n, xColorItem *pdefs)
+{
+ /* XXX Not sure if this is right */
+
+ EPHYR_LOG("mark");
+
+ while (n--)
+ {
+ pdefs->red = 0;
+ pdefs->green = 0;
+ pdefs->blue = 0;
+ pdefs++;
+ }
+
+}
+
+void
+ephyrPutColors (ScreenPtr pScreen, int fb, int n, xColorItem *pdefs)
+{
+ int min, max, p;
+
+ /* XXX Not sure if this is right */
+
+ min = 256;
+ max = 0;
+
+ while (n--)
+ {
+ p = pdefs->pixel;
+ if (p < min)
+ min = p;
+ if (p > max)
+ max = p;
+
+ hostx_set_cmap_entry(p,
+ pdefs->red >> 8,
+ pdefs->green >> 8,
+ pdefs->blue >> 8);
+ pdefs++;
+ }
+}
+
+/* Mouse calls */
+
+static Status
+MouseInit (KdPointerInfo *pi)
+{
+ pi->driverPrivate = (EphyrPointerPrivate *)
+ xcalloc(sizeof(EphyrPointerPrivate), 1);
+ ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = FALSE;
+ pi->nAxes = 3;
+ pi->nButtons = 32;
+ if (pi->name)
+ xfree(pi->name);
+ pi->name = strdup("Xephyr virtual mouse");
+ ephyrMouse = pi;
+ return Success;
+}
+
+static Status
+MouseEnable (KdPointerInfo *pi)
+{
+ ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = TRUE;
+ return Success;
+}
+
+static void
+MouseDisable (KdPointerInfo *pi)
+{
+ ((EphyrPointerPrivate *)pi->driverPrivate)->enabled = FALSE;
+ return;
+}
+
+static void
+MouseFini (KdPointerInfo *pi)
+{
+ ephyrMouse = NULL;
+ return;
+}
+
+KdPointerDriver EphyrMouseDriver = {
+ "ephyr",
+ MouseInit,
+ MouseEnable,
+ MouseDisable,
+ MouseFini,
+ NULL,
+};
+
+/* Keyboard */
+
+static Status
+EphyrKeyboardInit (KdKeyboardInfo *ki)
+{
+ ki->driverPrivate = (EphyrKbdPrivate *)
+ xcalloc(sizeof(EphyrKbdPrivate), 1);
+ hostx_load_keymap();
+ if (!ephyrKeySyms.map) {
+ ErrorF("Couldn't load keymap from host\n");
+ return BadAlloc;
+ }
+ ki->minScanCode = ephyrKeySyms.minKeyCode;
+ ki->maxScanCode = ephyrKeySyms.maxKeyCode;
+ if (ki->name)
+ xfree(ki->name);
+ ki->name = strdup("Xephyr virtual keyboard");
+ ephyrKbd = ki;
+ return Success;
+}
+
+static Status
+EphyrKeyboardEnable (KdKeyboardInfo *ki)
+{
+ ((EphyrKbdPrivate *)ki->driverPrivate)->enabled = TRUE;
+
+ return Success;
+}
+
+static void
+EphyrKeyboardDisable (KdKeyboardInfo *ki)
+{
+ ((EphyrKbdPrivate *)ki->driverPrivate)->enabled = FALSE;
+}
+
+static void
+EphyrKeyboardFini (KdKeyboardInfo *ki)
+{
+ ephyrKbd = NULL;
+ return;
+}
+
+static void
+EphyrKeyboardLeds (KdKeyboardInfo *ki, int leds)
+{
+}
+
+static void
+EphyrKeyboardBell (KdKeyboardInfo *ki, int volume, int frequency, int duration)
+{
+}
+
+
+KdKeyboardDriver EphyrKeyboardDriver = {
+ "ephyr",
+ EphyrKeyboardInit,
+ EphyrKeyboardEnable,
+ EphyrKeyboardLeds,
+ EphyrKeyboardBell,
+ EphyrKeyboardDisable,
+ EphyrKeyboardFini,
+ NULL,
+};
diff --git a/xorg-server/hw/kdrive/ephyr/ephyrinit.c b/xorg-server/hw/kdrive/ephyr/ephyrinit.c index 27c346dd1..dec57b78c 100644 --- a/xorg-server/hw/kdrive/ephyr/ephyrinit.c +++ b/xorg-server/hw/kdrive/ephyr/ephyrinit.c @@ -1,407 +1,421 @@ -/* - * Xephyr - A kdrive X server thats runs in a host X window. - * Authored by Matthew Allum <mallum@o-hand.com> - * - * Copyright © 2004 Nokia - * - * Permission to use, copy, modify, distribute, and sell this software and its - * documentation for any purpose is hereby granted without fee, provided that - * the above copyright notice appear in all copies and that both that - * copyright notice and this permission notice appear in supporting - * documentation, and that the name of Nokia not be used in - * advertising or publicity pertaining to distribution of the software without - * specific, written prior permission. Nokia makes no - * representations about the suitability of this software for any purpose. It - * is provided "as is" without express or implied warranty. - * - * NOKIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, - * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO - * EVENT SHALL NOKIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR - * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, - * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER - * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR - * PERFORMANCE OF THIS SOFTWARE. - */ - -#ifdef HAVE_CONFIG_H -#include <kdrive-config.h> -#endif -#include "ephyr.h" -#include "ephyrlog.h" - -extern Window EphyrPreExistingHostWin; -extern Bool EphyrWantGrayScale; -extern Bool kdHasPointer; -extern Bool kdHasKbd; - -#ifdef GLXEXT -extern Bool ephyrNoDRI; -extern Bool noGlxVisualInit; -#endif -extern Bool ephyrNoXV; - -void processScreenArg (char *screen_size, char *parent_id) ; - -void -InitCard (char *name) -{ - KdCardAttr attr; - - EPHYR_DBG("mark"); - - - KdCardInfoAdd (&ephyrFuncs, &attr, 0); -} - -#ifndef _MSC_VER -void -InitOutput (ScreenInfo *pScreenInfo, int argc, char **argv) -{ - KdInitOutput (pScreenInfo, argc, argv); -} - -void -InitInput (int argc, char **argv) -{ - KdKeyboardInfo *ki; - KdPointerInfo *pi; - - KdAddKeyboardDriver(&EphyrKeyboardDriver); -#ifdef linux - KdAddKeyboardDriver(&LinuxEvdevKeyboardDriver); -#endif - KdAddPointerDriver(&EphyrMouseDriver); -#ifdef linux - KdAddPointerDriver(&LinuxEvdevMouseDriver); -#endif - - if (!kdHasKbd) { - ki = KdNewKeyboard(); - if (!ki) - FatalError("Couldn't create Xephyr keyboard\n"); - ki->driver = &EphyrKeyboardDriver; - KdAddKeyboard(ki); - } - - if (!kdHasPointer) { - pi = KdNewPointer(); - if (!pi) - FatalError("Couldn't create Xephyr pointer\n"); - pi->driver = &EphyrMouseDriver; - KdAddPointer(pi); - } - - KdInitInput(); -} - -void -ddxUseMsg (void) -{ - KdUseMsg(); - - ErrorF("\nXephyr Option Usage:\n"); - ErrorF("-parent <XID> Use existing window as Xephyr root win\n"); - ErrorF("-host-cursor Re-use exisiting X host server cursor\n"); - ErrorF("-fullscreen Attempt to run Xephyr fullscreen\n"); - ErrorF("-grayscale Simulate 8bit grayscale\n"); - ErrorF("-fakexa Simulate acceleration using software rendering\n"); - ErrorF("-verbosity <level> Set log verbosity level\n"); -#ifdef GLXEXT - ErrorF("-nodri do not use DRI\n"); -#endif - ErrorF("-noxv do not use XV\n"); - ErrorF("-name [name] define the name in the WM_CLASS property\n"); - ErrorF("-title [title] set the window title in the WM_NAME property\n"); - ErrorF("\n"); - - exit(1); -} -#endif - -void -processScreenArg (char *screen_size, char *parent_id) -{ - KdCardInfo *card; - - InitCard (0); /*Put each screen on a separate card*/ - card = KdCardInfoLast (); - - if (card) - { - KdScreenInfo *screen; - unsigned long p_id = 0; - - screen = KdScreenInfoAdd (card); - KdParseScreen (screen, screen_size); - - if (parent_id) - { - p_id = strtol (parent_id, NULL, 0); - } - EPHYR_DBG ("screen number:%d\n", screen->mynum) ; - hostx_add_screen (screen, p_id, screen->mynum); - } - else - { - ErrorF("No matching card found!\n"); - } -} - -#ifndef _MSC_VER -int -ddxProcessArgument (int argc, char **argv, int i) -{ - EPHYR_DBG("mark argv[%d]='%s'", i, argv[i] ); - - if (i == 1) - { - hostx_use_resname(basename(argv[0]), 0); - } - - if (!strcmp (argv[i], "-parent")) - { - if(i+1 < argc) - { - processScreenArg ("100x100", argv[i+1]); - return 2; - } - - UseMsg(); - exit(1); - } - else if (!strcmp (argv[i], "-screen")) - { - if ((i+1) < argc) - { - processScreenArg (argv[i+1], NULL); - return 2; - } - - UseMsg(); - exit(1); - } - else if (!strcmp (argv[i], "-host-cursor")) - { - hostx_use_host_cursor(); - return 1; - } - else if (!strcmp (argv[i], "-fullscreen")) - { - hostx_use_fullscreen(); - return 1; - } - else if (!strcmp (argv[i], "-grayscale")) - { - EphyrWantGrayScale = 1; - return 1; - } - else if (!strcmp (argv[i], "-fakexa")) - { - ephyrFuncs.initAccel = ephyrDrawInit; - ephyrFuncs.enableAccel = ephyrDrawEnable; - ephyrFuncs.disableAccel = ephyrDrawDisable; - ephyrFuncs.finiAccel = ephyrDrawFini; - return 1; - } - else if (!strcmp (argv[i], "-verbosity")) - { - if(i+1 < argc && argv[i+1][0] != '-') - { - int verbosity=atoi (argv[i+1]) ; - LogSetParameter (XLOG_VERBOSITY, verbosity) ; - EPHYR_LOG ("set verbosiry to %d\n", verbosity) ; - return 2 ; - } - else - { - UseMsg() ; - exit(1) ; - } - } -#ifdef GLXEXT - else if (!strcmp (argv[i], "-nodri")) - { - noGlxVisualInit = FALSE ; - ephyrNoDRI = TRUE ; - EPHYR_LOG ("no direct rendering enabled\n") ; - return 1 ; - } -#endif - else if (!strcmp (argv[i], "-noxv")) - { - ephyrNoXV = TRUE ; - EPHYR_LOG ("no XVideo enabled\n") ; - return 1 ; - } - else if (!strcmp (argv[i], "-name")) - { - if (i+1 < argc && argv[i+1][0] != '-') - { - hostx_use_resname(argv[i+1], 1); - return 2; - } - else - { - UseMsg(); - return 0; - } - } - else if (!strcmp (argv[i], "-title")) - { - if (i+1 < argc && argv[i+1][0] != '-') - { - hostx_set_title(argv[i+1]); - return 2; - } - else - { - UseMsg(); - return 0; - } - } - else if (argv[i][0] == ':') - { - hostx_set_display_name(argv[i]); - } - /* Xnest compatibility */ - else if (!strcmp(argv[i], "-display")) - { - hostx_set_display_name(argv[i+1]); - return 2; - } - else if (!strcmp(argv[i], "-sync") || - !strcmp(argv[i], "-full") || - !strcmp(argv[i], "-sss") || - !strcmp(argv[i], "-install")) - { - return 1; - } - else if (!strcmp(argv[i], "-bw") || - !strcmp(argv[i], "-class") || - !strcmp(argv[i], "-geometry") || - !strcmp(argv[i], "-scrns")) - { - return 2; - } - /* end Xnest compat */ - - return KdProcessArgument (argc, argv, i); -} - -#ifdef DDXBEFORERESET -void -ddxBeforeReset (void) -{ -} -#endif - -void -OsVendorInit (void) -{ - EPHYR_DBG("mark"); - - if (hostx_want_host_cursor()) - { - ephyrFuncs.initCursor = &ephyrCursorInit; - ephyrFuncs.enableCursor = &ephyrCursorEnable; - } - - KdOsInit (&EphyrOsFuncs); -} - -#ifdef DDXOSFATALERROR -void -OsVendorFatalError(void) -{ -} -#endif - -#endif - -/* 'Fake' cursor stuff, could be improved */ - -static Bool -ephyrRealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor) -{ - return TRUE; -} - -static Bool -ephyrUnrealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor) -{ - return TRUE; -} - -static void -ephyrSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor, int x, int y) -{ - ; -} - -static void -ephyrMoveCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y) -{ - ; -} - -static Bool -ephyrDeviceCursorInitialize(DeviceIntPtr pDev, ScreenPtr pScreen) -{ - return TRUE; -} - -miPointerSpriteFuncRec EphyrPointerSpriteFuncs = { - ephyrRealizeCursor, - ephyrUnrealizeCursor, - ephyrSetCursor, - ephyrMoveCursor, - ephyrDeviceCursorInitialize, - NULL -}; - - -Bool -ephyrCursorInit(ScreenPtr pScreen) -{ - miPointerInitialize(pScreen, - &EphyrPointerSpriteFuncs, - &ephyrPointerScreenFuncs, - FALSE); - - return TRUE; -} - -void -ephyrCursorEnable(ScreenPtr pScreen) -{ - ; -} - -KdCardFuncs ephyrFuncs = { - ephyrCardInit, /* cardinit */ - ephyrScreenInit, /* scrinit */ - ephyrInitScreen, /* initScreen */ - ephyrFinishInitScreen, /* finishInitScreen */ - ephyrCreateResources, /* createRes */ - ephyrPreserve, /* preserve */ - ephyrEnable, /* enable */ - ephyrDPMS, /* dpms */ - ephyrDisable, /* disable */ - ephyrRestore, /* restore */ - ephyrScreenFini, /* scrfini */ - ephyrCardFini, /* cardfini */ - - 0, /* initCursor */ - 0, /* enableCursor */ - 0, /* disableCursor */ - 0, /* finiCursor */ - 0, /* recolorCursor */ - - 0, /* initAccel */ - 0, /* enableAccel */ - 0, /* disableAccel */ - 0, /* finiAccel */ - - ephyrGetColors,/* getColors */ - ephyrPutColors, /* putColors */ -}; +/*
+ * Xephyr - A kdrive X server thats runs in a host X window.
+ * Authored by Matthew Allum <mallum@o-hand.com>
+ *
+ * Copyright © 2004 Nokia
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of Nokia not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission. Nokia makes no
+ * representations about the suitability of this software for any purpose. It
+ * is provided "as is" without express or implied warranty.
+ *
+ * NOKIA DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL NOKIA BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+#ifdef HAVE_CONFIG_H
+#include <kdrive-config.h>
+#endif
+#include "ephyr.h"
+#include "ephyrlog.h"
+
+extern Window EphyrPreExistingHostWin;
+extern Bool EphyrWantGrayScale;
+extern Bool kdHasPointer;
+extern Bool kdHasKbd;
+
+#ifdef GLXEXT
+extern Bool ephyrNoDRI;
+extern Bool noGlxVisualInit;
+#endif
+extern Bool ephyrNoXV;
+
+void processScreenArg (char *screen_size, char *parent_id) ;
+
+void
+InitCard (char *name)
+{
+ KdCardAttr attr;
+
+ EPHYR_DBG("mark");
+
+
+ KdCardInfoAdd (&ephyrFuncs, &attr, 0);
+}
+
+#ifndef _MSC_VER
+void
+InitOutput (ScreenInfo *pScreenInfo, int argc, char **argv)
+{
+ KdInitOutput (pScreenInfo, argc, argv);
+}
+
+void
+InitInput (int argc, char **argv)
+{
+ KdKeyboardInfo *ki;
+ KdPointerInfo *pi;
+
+ KdAddKeyboardDriver(&EphyrKeyboardDriver);
+#ifdef linux
+ KdAddKeyboardDriver(&LinuxEvdevKeyboardDriver);
+#endif
+ KdAddPointerDriver(&EphyrMouseDriver);
+#ifdef linux
+ KdAddPointerDriver(&LinuxEvdevMouseDriver);
+#endif
+
+ if (!kdHasKbd) {
+ ki = KdNewKeyboard();
+ if (!ki)
+ FatalError("Couldn't create Xephyr keyboard\n");
+ ki->driver = &EphyrKeyboardDriver;
+ KdAddKeyboard(ki);
+ }
+
+ if (!kdHasPointer) {
+ pi = KdNewPointer();
+ if (!pi)
+ FatalError("Couldn't create Xephyr pointer\n");
+ pi->driver = &EphyrMouseDriver;
+ KdAddPointer(pi);
+ }
+
+ KdInitInput();
+}
+
+void
+ddxUseMsg (void)
+{
+ KdUseMsg();
+
+ ErrorF("\nXephyr Option Usage:\n");
+ ErrorF("-parent <XID> Use existing window as Xephyr root win\n");
+ ErrorF("-host-cursor Re-use exisiting X host server cursor\n");
+ ErrorF("-fullscreen Attempt to run Xephyr fullscreen\n");
+ ErrorF("-grayscale Simulate 8bit grayscale\n");
+ ErrorF("-fakexa Simulate acceleration using software rendering\n");
+ ErrorF("-verbosity <level> Set log verbosity level\n");
+#ifdef GLXEXT
+ ErrorF("-nodri do not use DRI\n");
+#endif
+ ErrorF("-noxv do not use XV\n");
+ ErrorF("-name [name] define the name in the WM_CLASS property\n");
+ ErrorF("-title [title] set the window title in the WM_NAME property\n");
+ ErrorF("\n");
+
+ exit(1);
+}
+#endif
+
+void
+processScreenArg (char *screen_size, char *parent_id)
+{
+ KdCardInfo *card;
+
+ InitCard (0); /*Put each screen on a separate card*/
+ card = KdCardInfoLast ();
+
+ if (card)
+ {
+ KdScreenInfo *screen;
+ unsigned long p_id = 0;
+
+ screen = KdScreenInfoAdd (card);
+ KdParseScreen (screen, screen_size);
+
+ if (parent_id)
+ {
+ p_id = strtol (parent_id, NULL, 0);
+ }
+ EPHYR_DBG ("screen number:%d\n", screen->mynum) ;
+ hostx_add_screen (screen, p_id, screen->mynum);
+ }
+ else
+ {
+ ErrorF("No matching card found!\n");
+ }
+}
+
+#ifndef _MSC_VER
+int
+ddxProcessArgument (int argc, char **argv, int i)
+{
+ static char* parent = NULL;
+ EPHYR_DBG("mark argv[%d]='%s'", i, argv[i] );
+
+ if (i == 1)
+ {
+ hostx_use_resname(basename(argv[0]), 0);
+ }
+
+ if (!strcmp (argv[i], "-parent"))
+ {
+ if(i+1 < argc)
+ {
+ int j;
+ /* If parent is specified and a screen argument follows, don't do
+ * anything, let the -screen handling init the rest */
+ for (j = i; j < argc; j++)
+ {
+ if (!strcmp(argv[j], "-screen"))
+ {
+ parent = argv[i + 1];
+ return 2;
+ }
+ }
+
+ processScreenArg ("100x100", argv[i+1]);
+ return 2;
+ }
+
+ UseMsg();
+ exit(1);
+ }
+ else if (!strcmp (argv[i], "-screen"))
+ {
+ if ((i+1) < argc)
+ {
+ processScreenArg (argv[i+1], parent);
+ parent = NULL;
+ return 2;
+ }
+
+ UseMsg();
+ exit(1);
+ }
+ else if (!strcmp (argv[i], "-host-cursor"))
+ {
+ hostx_use_host_cursor();
+ return 1;
+ }
+ else if (!strcmp (argv[i], "-fullscreen"))
+ {
+ hostx_use_fullscreen();
+ return 1;
+ }
+ else if (!strcmp (argv[i], "-grayscale"))
+ {
+ EphyrWantGrayScale = 1;
+ return 1;
+ }
+ else if (!strcmp (argv[i], "-fakexa"))
+ {
+ ephyrFuncs.initAccel = ephyrDrawInit;
+ ephyrFuncs.enableAccel = ephyrDrawEnable;
+ ephyrFuncs.disableAccel = ephyrDrawDisable;
+ ephyrFuncs.finiAccel = ephyrDrawFini;
+ return 1;
+ }
+ else if (!strcmp (argv[i], "-verbosity"))
+ {
+ if(i+1 < argc && argv[i+1][0] != '-')
+ {
+ int verbosity=atoi (argv[i+1]) ;
+ LogSetParameter (XLOG_VERBOSITY, verbosity) ;
+ EPHYR_LOG ("set verbosiry to %d\n", verbosity) ;
+ return 2 ;
+ }
+ else
+ {
+ UseMsg() ;
+ exit(1) ;
+ }
+ }
+#ifdef GLXEXT
+ else if (!strcmp (argv[i], "-nodri"))
+ {
+ noGlxVisualInit = FALSE ;
+ ephyrNoDRI = TRUE ;
+ EPHYR_LOG ("no direct rendering enabled\n") ;
+ return 1 ;
+ }
+#endif
+ else if (!strcmp (argv[i], "-noxv"))
+ {
+ ephyrNoXV = TRUE ;
+ EPHYR_LOG ("no XVideo enabled\n") ;
+ return 1 ;
+ }
+ else if (!strcmp (argv[i], "-name"))
+ {
+ if (i+1 < argc && argv[i+1][0] != '-')
+ {
+ hostx_use_resname(argv[i+1], 1);
+ return 2;
+ }
+ else
+ {
+ UseMsg();
+ return 0;
+ }
+ }
+ else if (!strcmp (argv[i], "-title"))
+ {
+ if (i+1 < argc && argv[i+1][0] != '-')
+ {
+ hostx_set_title(argv[i+1]);
+ return 2;
+ }
+ else
+ {
+ UseMsg();
+ return 0;
+ }
+ }
+ else if (argv[i][0] == ':')
+ {
+ hostx_set_display_name(argv[i]);
+ }
+ /* Xnest compatibility */
+ else if (!strcmp(argv[i], "-display"))
+ {
+ hostx_set_display_name(argv[i+1]);
+ return 2;
+ }
+ else if (!strcmp(argv[i], "-sync") ||
+ !strcmp(argv[i], "-full") ||
+ !strcmp(argv[i], "-sss") ||
+ !strcmp(argv[i], "-install"))
+ {
+ return 1;
+ }
+ else if (!strcmp(argv[i], "-bw") ||
+ !strcmp(argv[i], "-class") ||
+ !strcmp(argv[i], "-geometry") ||
+ !strcmp(argv[i], "-scrns"))
+ {
+ return 2;
+ }
+ /* end Xnest compat */
+
+ return KdProcessArgument (argc, argv, i);
+}
+
+#ifdef DDXBEFORERESET
+void
+ddxBeforeReset (void)
+{
+}
+#endif
+
+void
+OsVendorInit (void)
+{
+ EPHYR_DBG("mark");
+
+ if (hostx_want_host_cursor())
+ {
+ ephyrFuncs.initCursor = &ephyrCursorInit;
+ ephyrFuncs.enableCursor = &ephyrCursorEnable;
+ }
+
+ KdOsInit (&EphyrOsFuncs);
+}
+
+#ifdef DDXOSFATALERROR
+void
+OsVendorFatalError(void)
+{
+}
+#endif
+
+#endif
+
+/* 'Fake' cursor stuff, could be improved */
+
+static Bool
+ephyrRealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor)
+{
+ return TRUE;
+}
+
+static Bool
+ephyrUnrealizeCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor)
+{
+ return TRUE;
+}
+
+static void
+ephyrSetCursor(DeviceIntPtr pDev, ScreenPtr pScreen, CursorPtr pCursor, int x, int y)
+{
+ ;
+}
+
+static void
+ephyrMoveCursor(DeviceIntPtr pDev, ScreenPtr pScreen, int x, int y)
+{
+ ;
+}
+
+static Bool
+ephyrDeviceCursorInitialize(DeviceIntPtr pDev, ScreenPtr pScreen)
+{
+ return TRUE;
+}
+
+miPointerSpriteFuncRec EphyrPointerSpriteFuncs = {
+ ephyrRealizeCursor,
+ ephyrUnrealizeCursor,
+ ephyrSetCursor,
+ ephyrMoveCursor,
+ ephyrDeviceCursorInitialize,
+ NULL
+};
+
+
+Bool
+ephyrCursorInit(ScreenPtr pScreen)
+{
+ miPointerInitialize(pScreen,
+ &EphyrPointerSpriteFuncs,
+ &ephyrPointerScreenFuncs,
+ FALSE);
+
+ return TRUE;
+}
+
+void
+ephyrCursorEnable(ScreenPtr pScreen)
+{
+ ;
+}
+
+KdCardFuncs ephyrFuncs = {
+ ephyrCardInit, /* cardinit */
+ ephyrScreenInit, /* scrinit */
+ ephyrInitScreen, /* initScreen */
+ ephyrFinishInitScreen, /* finishInitScreen */
+ ephyrCreateResources, /* createRes */
+ ephyrPreserve, /* preserve */
+ ephyrEnable, /* enable */
+ ephyrDPMS, /* dpms */
+ ephyrDisable, /* disable */
+ ephyrRestore, /* restore */
+ ephyrScreenFini, /* scrfini */
+ ephyrCardFini, /* cardfini */
+
+ 0, /* initCursor */
+ 0, /* enableCursor */
+ 0, /* disableCursor */
+ 0, /* finiCursor */
+ 0, /* recolorCursor */
+
+ 0, /* initAccel */
+ 0, /* enableAccel */
+ 0, /* disableAccel */
+ 0, /* finiAccel */
+
+ ephyrGetColors,/* getColors */
+ ephyrPutColors, /* putColors */
+};
diff --git a/xorg-server/hw/kdrive/src/kinfo.c b/xorg-server/hw/kdrive/src/kinfo.c index cb646130e..4551fd76b 100644 --- a/xorg-server/hw/kdrive/src/kinfo.c +++ b/xorg-server/hw/kdrive/src/kinfo.c @@ -166,6 +166,12 @@ KdFreeKeyboard(KdKeyboardInfo *ki) xfree(ki->name); if (ki->path) xfree(ki->path); + if (ki->xkbRules) + xfree(ki->xkbRules); + if (ki->xkbModel) + xfree(ki->xkbModel); + if (ki->xkbLayout) + xfree(ki->xkbLayout); ki->next = NULL; xfree(ki); } diff --git a/xorg-server/hw/xfree86/common/compiler.h b/xorg-server/hw/xfree86/common/compiler.h index 71a94c0c8..ae6a4615c 100644 --- a/xorg-server/hw/xfree86/common/compiler.h +++ b/xorg-server/hw/xfree86/common/compiler.h @@ -1211,6 +1211,8 @@ extern _X_EXPORT void (*xf86WriteMmio32)(int, void *, unsigned long); extern _X_EXPORT void (*xf86WriteMmioNB8)(int, void *, unsigned long);
extern _X_EXPORT void (*xf86WriteMmioNB16)(int, void *, unsigned long);
extern _X_EXPORT void (*xf86WriteMmioNB32)(int, void *, unsigned long);
+extern _X_EXPORT void xf86SlowBCopyFromBus(unsigned char *, unsigned char *, int);
+extern _X_EXPORT void xf86SlowBCopyToBus(unsigned char *, unsigned char *, int);
/* Some macros to hide the system dependencies for MMIO accesses */
/* Changed to kill noise generated by gcc's -Wcast-align */
@@ -1342,4 +1344,18 @@ extern _X_EXPORT void (*xf86WriteMmioNB32)(int, void *, unsigned long); # define MMIO_MOVE32(base, offset, val) MMIO_OUT32(base, offset, val)
# endif /* __alpha__ */
+
+/*
+ * With Intel, the version in os-support/misc/SlowBcopy.s is used.
+ * This avoids port I/O during the copy (which causes problems with
+ * some hardware).
+ */
+# ifdef __alpha__
+# define slowbcopy_tobus(src,dst,count) xf86SlowBCopyToBus(src,dst,count)
+# define slowbcopy_frombus(src,dst,count) xf86SlowBCopyFromBus(src,dst,count)
+# else /* __alpha__ */
+# define slowbcopy_tobus(src,dst,count) xf86SlowBcopy(src,dst,count)
+# define slowbcopy_frombus(src,dst,count) xf86SlowBcopy(src,dst,count)
+# endif /* __alpha__ */
+
#endif /* _COMPILER_H */
diff --git a/xorg-server/hw/xfree86/common/xf86DGA.c b/xorg-server/hw/xfree86/common/xf86DGA.c index 42b7c5805..804fd37c1 100644 --- a/xorg-server/hw/xfree86/common/xf86DGA.c +++ b/xorg-server/hw/xfree86/common/xf86DGA.c @@ -120,8 +120,22 @@ DGAInit( DGAScreenKey = &DGAScreenKeyIndex; - if(!(pScreenPriv = (DGAScreenPtr)xalloc(sizeof(DGAScreenRec)))) - return FALSE; + pScreenPriv = DGA_GET_SCREEN_PRIV(pScreen); + + if (!pScreenPriv) + { + if(!(pScreenPriv = (DGAScreenPtr)xalloc(sizeof(DGAScreenRec)))) + return FALSE; + dixSetPrivate(&pScreen->devPrivates, DGAScreenKey, pScreenPriv); + pScreenPriv->CloseScreen = pScreen->CloseScreen; + pScreen->CloseScreen = DGACloseScreen; + pScreenPriv->DestroyColormap = pScreen->DestroyColormap; + pScreen->DestroyColormap = DGADestroyColormap; + pScreenPriv->InstallColormap = pScreen->InstallColormap; + pScreen->InstallColormap = DGAInstallColormap; + pScreenPriv->UninstallColormap = pScreen->UninstallColormap; + pScreen->UninstallColormap = DGAUninstallColormap; + } pScreenPriv->pScrn = pScrn; pScreenPriv->numModes = num; @@ -146,17 +160,6 @@ DGAInit( modes[i].flags &= ~DGA_PIXMAP_AVAILABLE; #endif - dixSetPrivate(&pScreen->devPrivates, DGAScreenKey, pScreenPriv); - pScreenPriv->CloseScreen = pScreen->CloseScreen; - pScreen->CloseScreen = DGACloseScreen; - pScreenPriv->DestroyColormap = pScreen->DestroyColormap; - pScreen->DestroyColormap = DGADestroyColormap; - pScreenPriv->InstallColormap = pScreen->InstallColormap; - pScreen->InstallColormap = DGAInstallColormap; - pScreenPriv->UninstallColormap = pScreen->UninstallColormap; - pScreen->UninstallColormap = DGAUninstallColormap; - - return TRUE; } diff --git a/xorg-server/hw/xfree86/loader/sdksyms.c b/xorg-server/hw/xfree86/loader/sdksyms.c index df06ef561..12af6b72e 100644 --- a/xorg-server/hw/xfree86/loader/sdksyms.c +++ b/xorg-server/hw/xfree86/loader/sdksyms.c @@ -740,6 +740,7 @@ _X_HIDDEN void *xorg_symbols[] = { (void *) &IsKeyboardDevice, (void *) &IsPointerEvent, (void *) &IsMaster, + (void *) &CopyKeyClass, (void *) &CorePointerProc, (void *) &CoreKeyboardProc, (void *) &SecurityLookupWindow, @@ -804,6 +805,7 @@ _X_HIDDEN void *xorg_symbols[] = { (void *) &FreeColors, (void *) &StoreColors, (void *) &IsMapInstalled, + (void *) &ResizeVisualArray, (void *) &screenInfo, (void *) &InitOutput, (void *) &FindGlyphHashSet, diff --git a/xorg-server/hw/xfree86/modes/xf86Crtc.c b/xorg-server/hw/xfree86/modes/xf86Crtc.c index c1e31e003..506fbb9cb 100644 --- a/xorg-server/hw/xfree86/modes/xf86Crtc.c +++ b/xorg-server/hw/xfree86/modes/xf86Crtc.c @@ -806,7 +806,7 @@ xf86CrtcScreenInit (ScreenPtr screen) screen->CloseScreen = xf86CrtcCloseScreen; #ifdef XFreeXDGA - xf86DiDGAInit(screen, 0); + _xf86_di_dga_init_internal(screen); #endif #ifdef RANDR_13_INTERFACE return RANDR_INTERFACE_VERSION; @@ -1928,7 +1928,7 @@ xf86SetScrnInfoModes (ScrnInfoPtr scrn) scrn->currentMode = scrn->modes; #ifdef XFreeXDGA if (scrn->pScreen) - xf86DiDGAReInit(scrn->pScreen); + _xf86_di_dga_reinit_internal(scrn->pScreen); #endif } diff --git a/xorg-server/hw/xfree86/modes/xf86Crtc.h b/xorg-server/hw/xfree86/modes/xf86Crtc.h index 69afaa5d1..9baa956a3 100644 --- a/xorg-server/hw/xfree86/modes/xf86Crtc.h +++ b/xorg-server/hw/xfree86/modes/xf86Crtc.h @@ -833,6 +833,10 @@ xf86OutputGetEDID (xf86OutputPtr output, I2CBusPtr pDDCBus); extern _X_EXPORT Bool xf86DiDGAInit (ScreenPtr pScreen, unsigned long dga_address); +/* this is the real function, used only internally */ +_X_INTERNAL Bool +_xf86_di_dga_init_internal (ScreenPtr pScreen); + /** * Re-initialize dga for this screen (as when the set of modes changes) */ @@ -841,6 +845,10 @@ extern _X_EXPORT Bool xf86DiDGAReInit (ScreenPtr pScreen); #endif +/* This is the real function, used only internally */ +_X_INTERNAL Bool +_xf86_di_dga_reinit_internal (ScreenPtr pScreen); + /* * Set the subpixel order reported for the screen using * the information from the outputs diff --git a/xorg-server/hw/xfree86/modes/xf86DiDGA.c b/xorg-server/hw/xfree86/modes/xf86DiDGA.c index 0f7b8342c..60fbdbf05 100644 --- a/xorg-server/hw/xfree86/modes/xf86DiDGA.c +++ b/xorg-server/hw/xfree86/modes/xf86DiDGA.c @@ -175,6 +175,12 @@ static DGAFunctionRec xf86_dga_funcs = { Bool xf86DiDGAReInit (ScreenPtr pScreen) { + return TRUE; +} + +Bool +_xf86_di_dga_reinit_internal (ScreenPtr pScreen) +{ ScrnInfoPtr scrn = xf86Screens[pScreen->myNum]; xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); @@ -190,12 +196,15 @@ xf86DiDGAReInit (ScreenPtr pScreen) Bool xf86DiDGAInit (ScreenPtr pScreen, unsigned long dga_address) { + return TRUE; +} + +Bool +_xf86_di_dga_init_internal (ScreenPtr pScreen) +{ ScrnInfoPtr scrn = xf86Screens[pScreen->myNum]; xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn); - if (DGAAvailable(pScreen->myNum)) - return TRUE; - xf86_config->dga_flags = 0; xf86_config->dga_address = 0; xf86_config->dga_width = 0; diff --git a/xorg-server/hw/xfree86/modes/xf86EdidModes.c b/xorg-server/hw/xfree86/modes/xf86EdidModes.c index 6e11f9a3d..2f80070cf 100644 --- a/xorg-server/hw/xfree86/modes/xf86EdidModes.c +++ b/xorg-server/hw/xfree86/modes/xf86EdidModes.c @@ -957,7 +957,7 @@ xf86EdidMonitorSet(int scrnIndex, MonPtr Monitor, xf86MonPtr DDC) quirks = xf86DDCDetectQuirks(scrnIndex, DDC, FALSE); - if (Monitor->widthmm <= 0 && Monitor->heightmm <= 0) { + if (Monitor->widthmm <= 0 || Monitor->heightmm <= 0) { Monitor->widthmm = 10 * DDC->features.hsize; Monitor->heightmm = 10 * DDC->features.vsize; } diff --git a/xorg-server/hw/xfree86/modes/xf86Rotate.c b/xorg-server/hw/xfree86/modes/xf86Rotate.c index 9e65c9969..5de6b0c00 100644 --- a/xorg-server/hw/xfree86/modes/xf86Rotate.c +++ b/xorg-server/hw/xfree86/modes/xf86Rotate.c @@ -268,13 +268,9 @@ xf86RotateBlockHandler(int screenNum, pointer blockData, rotation_active = xf86RotateRedisplay(pScreen); pScreen->BlockHandler = xf86_config->BlockHandler; (*pScreen->BlockHandler) (screenNum, blockData, pTimeout, pReadmask); - if (rotation_active) { - /* Re-wrap if rotation is still happening */ - xf86_config->BlockHandler = pScreen->BlockHandler; - pScreen->BlockHandler = xf86RotateBlockHandler; - } else { - xf86_config->BlockHandler = NULL; - } + /* cannot avoid re-wrapping until all wrapping is audited */ + xf86_config->BlockHandler = pScreen->BlockHandler; + pScreen->BlockHandler = xf86RotateBlockHandler; } void diff --git a/xorg-server/hw/xfree86/os-support/hurd/hurd_video.c b/xorg-server/hw/xfree86/os-support/hurd/hurd_video.c index b8b00c892..4a99db375 100644 --- a/xorg-server/hw/xfree86/os-support/hurd/hurd_video.c +++ b/xorg-server/hw/xfree86/os-support/hurd/hurd_video.c @@ -42,7 +42,7 @@ * Video Memory Mapping section ***************************************************************************/ static pointer -mapVidMem(int ScreenNum,int Flags, unsigned long Base, unsigned long Size) +mapVidMem(int ScreenNum, unsigned long Base, unsigned long Size, int Flags) { mach_port_t device,iopl_dev; memory_object_t iopl_mem; diff --git a/xorg-server/hw/xfree86/os-support/misc/SlowBcopy.c b/xorg-server/hw/xfree86/os-support/misc/SlowBcopy.c index 8a5017e52..182a3e6ec 100644 --- a/xorg-server/hw/xfree86/os-support/misc/SlowBcopy.c +++ b/xorg-server/hw/xfree86/os-support/misc/SlowBcopy.c @@ -1,8 +1,15 @@ +/******************************************************************************* + for Alpha Linux +*******************************************************************************/ + /* * Create a dependency that should be immune from the effect of register * renaming as is commonly seen in superscalar processors. This should * insert a minimum of 100-ns delays between reads/writes at clock rates * up to 100 MHz---GGL + * + * Slowbcopy(char *src, char *dst, int count) + * */ #ifdef HAVE_XORG_CONFIG_H @@ -47,3 +54,48 @@ xf86SlowBcopy(unsigned char *src, unsigned char *dst, int len) while(len--) *dst++ = *src++; } + +#ifdef __alpha__ + +#ifdef linux + +#define SPARSE (7) + +#else + +#define SPARSE 0 + +#endif + +void +xf86SlowBCopyFromBus(unsigned char *src, unsigned char *dst, int count) +{ + unsigned long addr; + long result; + + addr = (unsigned long) src; + while( count ){ + result = *(volatile int *) addr; + result >>= ((addr>>SPARSE) & 3) * 8; + *dst++ = (unsigned char) (0xffUL & result); + addr += 1<<SPARSE; + count--; + outb(0x80, 0x00); + } +} + +void +xf86SlowBCopyToBus(unsigned char *src, unsigned char *dst, int count) +{ + unsigned long addr; + + addr = (unsigned long) dst; + while(count) { + *(volatile unsigned int *) addr = (unsigned short)(*src) * 0x01010101; + src++; + addr += 1<<SPARSE; + count--; + outb(0x80, 0x00); + } +} +#endif diff --git a/xorg-server/hw/xfree86/os-support/shared/bios_mmap.c b/xorg-server/hw/xfree86/os-support/shared/bios_mmap.c index a615a1d45..40afd5b8e 100644 --- a/xorg-server/hw/xfree86/os-support/shared/bios_mmap.c +++ b/xorg-server/hw/xfree86/os-support/shared/bios_mmap.c @@ -131,7 +131,7 @@ xf86ReadBIOS(unsigned long Base, unsigned long Offset, unsigned char *Buf, return(-1); } - xf86SlowBcopy((unsigned char *)(base+Offset), Buf, Len); + xf86SlowBCopyFromBus((unsigned char *)(base+Offset), Buf, Len); munmap((caddr_t)base, mlen); close(fd); diff --git a/xorg-server/hw/xfree86/vgahw/vgaHW.c b/xorg-server/hw/xfree86/vgahw/vgaHW.c index 025dde2da..004376b75 100644 --- a/xorg-server/hw/xfree86/vgahw/vgaHW.c +++ b/xorg-server/hw/xfree86/vgahw/vgaHW.c @@ -793,7 +793,7 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) if (hwp->FontInfo1) { hwp->writeSeq(hwp, 0x02, 0x04); /* write to plane 2 */ hwp->writeGr(hwp, 0x04, 0x02); /* read plane 2 */ - xf86SlowBcopy(hwp->FontInfo1, hwp->Base, FONT_AMOUNT); + slowbcopy_tobus(hwp->FontInfo1, hwp->Base, FONT_AMOUNT); } #endif @@ -801,7 +801,7 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) if (hwp->FontInfo2) { hwp->writeSeq(hwp, 0x02, 0x08); /* write to plane 3 */ hwp->writeGr(hwp, 0x04, 0x03); /* read plane 3 */ - xf86SlowBcopy(hwp->FontInfo2, hwp->Base, FONT_AMOUNT); + slowbcopy_tobus(hwp->FontInfo2, hwp->Base, FONT_AMOUNT); } #endif @@ -809,10 +809,10 @@ vgaHWRestoreFonts(ScrnInfoPtr scrninfp, vgaRegPtr restore) if (hwp->TextInfo) { hwp->writeSeq(hwp, 0x02, 0x01); /* write to plane 0 */ hwp->writeGr(hwp, 0x04, 0x00); /* read plane 0 */ - xf86SlowBcopy(hwp->TextInfo, hwp->Base, TEXT_AMOUNT); + slowbcopy_tobus(hwp->TextInfo, hwp->Base, TEXT_AMOUNT); hwp->writeSeq(hwp, 0x02, 0x02); /* write to plane 1 */ hwp->writeGr(hwp, 0x04, 0x01); /* read plane 1 */ - xf86SlowBcopy((unsigned char *)hwp->TextInfo + TEXT_AMOUNT, + slowbcopy_tobus((unsigned char *)hwp->TextInfo + TEXT_AMOUNT, hwp->Base, TEXT_AMOUNT); } #endif @@ -971,24 +971,24 @@ vgaHWSaveFonts(ScrnInfoPtr scrninfp, vgaRegPtr save) if (hwp->FontInfo1 || (hwp->FontInfo1 = xalloc(FONT_AMOUNT))) { hwp->writeSeq(hwp, 0x02, 0x04); /* write to plane 2 */ hwp->writeGr(hwp, 0x04, 0x02); /* read plane 2 */ - xf86SlowBcopy(hwp->Base, hwp->FontInfo1, FONT_AMOUNT); + slowbcopy_frombus(hwp->Base, hwp->FontInfo1, FONT_AMOUNT); } #endif /* SAVE_FONT1 */ #if SAVE_FONT2 if (hwp->FontInfo2 || (hwp->FontInfo2 = xalloc(FONT_AMOUNT))) { hwp->writeSeq(hwp, 0x02, 0x08); /* write to plane 3 */ hwp->writeGr(hwp, 0x04, 0x03); /* read plane 3 */ - xf86SlowBcopy(hwp->Base, hwp->FontInfo2, FONT_AMOUNT); + slowbcopy_frombus(hwp->Base, hwp->FontInfo2, FONT_AMOUNT); } #endif /* SAVE_FONT2 */ #if SAVE_TEXT if (hwp->TextInfo || (hwp->TextInfo = xalloc(2 * TEXT_AMOUNT))) { hwp->writeSeq(hwp, 0x02, 0x01); /* write to plane 0 */ hwp->writeGr(hwp, 0x04, 0x00); /* read plane 0 */ - xf86SlowBcopy(hwp->Base, hwp->TextInfo, TEXT_AMOUNT); + slowbcopy_frombus(hwp->Base, hwp->TextInfo, TEXT_AMOUNT); hwp->writeSeq(hwp, 0x02, 0x02); /* write to plane 1 */ hwp->writeGr(hwp, 0x04, 0x01); /* read plane 1 */ - xf86SlowBcopy(hwp->Base, + slowbcopy_frombus(hwp->Base, (unsigned char *)hwp->TextInfo + TEXT_AMOUNT, TEXT_AMOUNT); } #endif /* SAVE_TEXT */ diff --git a/xorg-server/hw/xquartz/GL/capabilities.c b/xorg-server/hw/xquartz/GL/capabilities.c index 99b9eae61..43064044c 100644 --- a/xorg-server/hw/xquartz/GL/capabilities.c +++ b/xorg-server/hw/xquartz/GL/capabilities.c @@ -103,7 +103,7 @@ static void handleStencilModes(struct glCapabilitiesConfig *c, GLint smodes) { } static int handleColorAndAccumulation(struct glColorBufCapabilities *c, - GLint cmodes) { + GLint cmodes, int forAccum) { int offset = 0; /*1*/ @@ -204,8 +204,9 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c, ++offset; } -#if 0 - /* + if(forAccum) { +//#if 0 + /* FIXME * Disable this path, because some part of libGL, X, or Xplugin * doesn't work with sizes greater than 8. * When this is enabled and visuals are chosen using depths @@ -274,7 +275,8 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c, c[offset].a = 16; ++offset; } -#endif + } +//#endif /* FIXME should we handle the floating point color modes, and if so, how? */ @@ -284,14 +286,14 @@ static int handleColorAndAccumulation(struct glColorBufCapabilities *c, static void handleColorModes(struct glCapabilitiesConfig *c, GLint cmodes) { c->total_color_buffers = handleColorAndAccumulation(c->color_buffers, - cmodes); + cmodes, 0); assert(c->total_color_buffers < GLCAPS_COLOR_BUFFERS); } static void handleAccumulationModes(struct glCapabilitiesConfig *c, GLint cmodes) { c->total_accum_buffers = handleColorAndAccumulation(c->accum_buffers, - cmodes); + cmodes, 1); assert(c->total_accum_buffers < GLCAPS_COLOR_BUFFERS); } diff --git a/xorg-server/hw/xquartz/GL/visualConfigs.c b/xorg-server/hw/xquartz/GL/visualConfigs.c index fee665d1d..f92677847 100644 --- a/xorg-server/hw/xquartz/GL/visualConfigs.c +++ b/xorg-server/hw/xquartz/GL/visualConfigs.c @@ -277,7 +277,7 @@ __GLXconfig *__glXAquaCreateVisualConfigs(int *numConfigsPtr, int screenNumber) (c-1)->next = NULL; if (c - visualConfigs != numConfigs) { - FatalError("numConfigs calculation error in setVisualConfigs! numConfigs is %d i is %d\n", numConfigs, c - visualConfigs); + FatalError("numConfigs calculation error in setVisualConfigs! numConfigs is %d i is %d\n", numConfigs, (int)(c - visualConfigs)); } freeGlCapabilities(&caps); diff --git a/xorg-server/hw/xquartz/Makefile.am b/xorg-server/hw/xquartz/Makefile.am index ae8aa7f53..65c70b076 100644 --- a/xorg-server/hw/xquartz/Makefile.am +++ b/xorg-server/hw/xquartz/Makefile.am @@ -33,7 +33,6 @@ libXquartz_la_SOURCES = \ quartzAudio.c \ quartzCocoa.m \ quartzKeyboard.c \ - quartzPasteboard.c \ quartzStartup.c \ threadSafety.c @@ -50,7 +49,6 @@ EXTRA_DIST = \ quartzAudio.h \ quartzCommon.h \ quartzKeyboard.h \ - quartzPasteboard.h \ sanitizedCarbon.h \ sanitizedCocoa.h \ threadSafety.h diff --git a/xorg-server/hw/xquartz/Makefile.in b/xorg-server/hw/xquartz/Makefile.in index e63ae0d6a..a5f6a17a1 100644 --- a/xorg-server/hw/xquartz/Makefile.in +++ b/xorg-server/hw/xquartz/Makefile.in @@ -61,7 +61,7 @@ am_libXquartz_la_OBJECTS = fbcmap_mi.lo miinitext.lo X11Application.lo \ X11Controller.lo applewm.lo darwin.lo darwinEvents.lo \ darwinXinput.lo keysym2ucs.lo pseudoramiX.lo quartz.lo \ quartzAudio.lo quartzCocoa.lo quartzKeyboard.lo \ - quartzPasteboard.lo quartzStartup.lo threadSafety.lo + quartzStartup.lo threadSafety.lo libXquartz_la_OBJECTS = $(am_libXquartz_la_OBJECTS) AM_V_lt = $(am__v_lt_$(V)) am__v_lt_ = $(am__v_lt_$(AM_DEFAULT_VERBOSITY)) @@ -465,7 +465,6 @@ libXquartz_la_SOURCES = \ quartzAudio.c \ quartzCocoa.m \ quartzKeyboard.c \ - quartzPasteboard.c \ quartzStartup.c \ threadSafety.c @@ -482,7 +481,6 @@ EXTRA_DIST = \ quartzAudio.h \ quartzCommon.h \ quartzKeyboard.h \ - quartzPasteboard.h \ sanitizedCarbon.h \ sanitizedCocoa.h \ threadSafety.h @@ -553,7 +551,6 @@ distclean-compile: @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quartzAudio.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quartzCocoa.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quartzKeyboard.Plo@am__quote@ -@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quartzPasteboard.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/quartzStartup.Plo@am__quote@ @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/threadSafety.Plo@am__quote@ diff --git a/xorg-server/hw/xquartz/X11Application.m b/xorg-server/hw/xquartz/X11Application.m index 9fb192648..749a8932b 100644 --- a/xorg-server/hw/xquartz/X11Application.m +++ b/xorg-server/hw/xquartz/X11Application.m @@ -184,9 +184,6 @@ static void message_kit_thread (SEL selector, NSObject *arg) { } - (void) activateX:(OSX_BOOL)state { - /* Create a TSM document that supports full Unicode input, and - have it activated while X is active */ - static TSMDocumentID x11_document; size_t i; DEBUG_LOG("state=%d, _x_active=%d, \n", state, _x_active) if (state) { @@ -195,16 +192,6 @@ static void message_kit_thread (SEL selector, NSObject *arg) { bgMouseLocationUpdated = FALSE; } DarwinSendDDXEvent(kXquartzActivate, 0); - - if (!_x_active) { - if (x11_document == 0) { - OSType types[1]; - types[0] = kUnicodeDocument; - NewTSMDocument (1, types, &x11_document, 0); - } - - if (x11_document != 0) ActivateTSMDocument (x11_document); - } } else { if(darwin_all_modifier_flags) @@ -217,9 +204,6 @@ static void message_kit_thread (SEL selector, NSObject *arg) { } DarwinSendDDXEvent(kXquartzDeactivate, 0); - - if (_x_active && x11_document != 0) - DeactivateTSMDocument (x11_document); } _x_active = state; @@ -259,23 +243,26 @@ static void message_kit_thread (SEL selector, NSObject *arg) { if(!for_appkit) { NSPoint NSlocation = [e locationInWindow]; NSWindow *window = [e window]; - + NSRect NSframe, NSvisibleFrame; + CGRect CGframe, CGvisibleFrame; + CGPoint CGlocation; + if (window != nil) { NSRect frame = [window frame]; NSlocation.x += frame.origin.x; NSlocation.y += frame.origin.y; } - NSRect NSframe = [[NSScreen mainScreen] frame]; - NSRect NSvisibleFrame = [[NSScreen mainScreen] visibleFrame]; + NSframe = [[NSScreen mainScreen] frame]; + NSvisibleFrame = [[NSScreen mainScreen] visibleFrame]; - CGRect CGframe = CGRectMake(NSframe.origin.x, NSframe.origin.y, + CGframe = CGRectMake(NSframe.origin.x, NSframe.origin.y, NSframe.size.width, NSframe.size.height); - CGRect CGvisibleFrame = CGRectMake(NSvisibleFrame.origin.x, + CGvisibleFrame = CGRectMake(NSvisibleFrame.origin.x, NSvisibleFrame.origin.y, NSvisibleFrame.size.width, NSvisibleFrame.size.height); - CGPoint CGlocation = CGPointMake(NSlocation.x, NSlocation.y); + CGlocation = CGPointMake(NSlocation.x, NSlocation.y); if(CGRectContainsPoint(CGframe, CGlocation) && !CGRectContainsPoint(CGvisibleFrame, CGlocation)) @@ -350,6 +337,7 @@ static void message_kit_thread (SEL selector, NSObject *arg) { case NSApplicationActivatedEventType: for_x = NO; if ([self modalWindow] == nil) { + BOOL switch_on_activate, ok; for_appkit = NO; /* FIXME: hack to avoid having to pass the event to appkit, @@ -360,7 +348,6 @@ static void message_kit_thread (SEL selector, NSObject *arg) { /* Get the Spaces preference for SwitchOnActivate */ (void)CFPreferencesAppSynchronize(CFSTR(".GlobalPreferences")); - BOOL switch_on_activate, ok; switch_on_activate = CFPreferencesGetAppBooleanValue(CFSTR("AppleSpacesSwitchOnActivate"), CFSTR(".GlobalPreferences"), &ok); if(!ok) switch_on_activate = YES; @@ -1180,6 +1167,17 @@ static inline int ensure_flag(int flags, int device_independent, int device_depe break; case NSKeyDown: case NSKeyUp: + { + /* XKB clobbers our keymap at startup, so we need to force it on the first keypress. + * TODO: Make this less of a kludge. + */ + static int force_resync_keymap = YES; + if(force_resync_keymap) { + DarwinSendDDXEvent(kXquartzReloadKeymap, 0); + force_resync_keymap = NO; + } + } + if(darwinSyncKeymap) { #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 TISInputSourceRef key_layout = TISCopyCurrentKeyboardLayoutInputSource(); diff --git a/xorg-server/hw/xquartz/X11Controller.m b/xorg-server/hw/xquartz/X11Controller.m index f58747e15..d8d23ec2f 100644 --- a/xorg-server/hw/xquartz/X11Controller.m +++ b/xorg-server/hw/xquartz/X11Controller.m @@ -632,6 +632,8 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row - (IBAction)prefs_changed:sender { + BOOL pbproxy_active; + darwinFakeButtons = [fake_buttons intValue]; quartzUseSysBeep = [use_sysbeep intValue]; X11EnableKeyEquivalents = [enable_keyequivs intValue]; @@ -653,7 +655,7 @@ objectValueForTableColumn:(NSTableColumn *)tableColumn row:(int)row [NSApp prefs_set_boolean:@PREFS_NO_TCP value:![enable_tcp intValue]]; [NSApp prefs_set_integer:@PREFS_DEPTH value:[depth selectedTag]]; - BOOL pbproxy_active = [sync_pasteboard intValue]; + pbproxy_active = [sync_pasteboard intValue]; [NSApp prefs_set_boolean:@PREFS_SYNC_PB value:pbproxy_active]; [NSApp prefs_set_boolean:@PREFS_SYNC_PB_TO_CLIPBOARD value:[sync_pasteboard_to_clipboard intValue]]; diff --git a/xorg-server/hw/xquartz/applewm.c b/xorg-server/hw/xquartz/applewm.c index 14be180a1..d2cca13f3 100644 --- a/xorg-server/hw/xquartz/applewm.c +++ b/xorg-server/hw/xquartz/applewm.c @@ -210,10 +210,7 @@ updateEventMask (WMEventPtr *pHead) /*ARGSUSED*/ static int -WMFreeClient (data, id) - pointer data; - XID id; -{ +WMFreeClient (pointer data, XID id) { WMEventPtr pEvent; WMEventPtr *pHead, pCur, pPrev; @@ -237,10 +234,7 @@ WMFreeClient (data, id) /*ARGSUSED*/ static int -WMFreeEvents (data, id) - pointer data; - XID id; -{ +WMFreeEvents (pointer data, XID id) { WMEventPtr *pHead, pCur, pNext; pHead = (WMEventPtr *) data; @@ -344,10 +338,7 @@ ProcAppleWMSelectInput (register ClientPtr client) */ void -AppleWMSendEvent (type, mask, which, arg) - int type, which, arg; - unsigned int mask; -{ +AppleWMSendEvent (int type, unsigned int mask, int which, int arg) { WMEventPtr *pHead, pEvent; ClientPtr client; xAppleWMNotifyEvent se; @@ -712,9 +703,7 @@ ProcAppleWMDispatch ( } static void -SNotifyEvent(from, to) - xAppleWMNotifyEvent *from, *to; -{ +SNotifyEvent(xAppleWMNotifyEvent *from, xAppleWMNotifyEvent *to) { to->type = from->type; to->kind = from->kind; cpswaps (from->sequenceNumber, to->sequenceNumber); diff --git a/xorg-server/hw/xquartz/darwin.c b/xorg-server/hw/xquartz/darwin.c index 7129ac61f..30b890589 100644 --- a/xorg-server/hw/xquartz/darwin.c +++ b/xorg-server/hw/xquartz/darwin.c @@ -67,8 +67,7 @@ #include <IOKit/hidsystem/IOHIDLib.h> #ifdef MITSHM -#define _XSHM_SERVER_ -#include <X11/extensions/XShm.h> +#include "shmint.h" #endif #include "darwin.h" @@ -291,8 +290,8 @@ static int DarwinMouseProc(DeviceIntPtr pPointer, int what) { #define NAXES 2 // 7 buttons: left, right, middle, then four scroll wheel "buttons" CARD8 map[NBUTTONS + 1] = {0, 1, 2, 3, 4, 5, 6, 7}; - Atom btn_labels[NAXES] = {0}; - Atom axes_labels[NBUTTONS] = {0}; + Atom btn_labels[NBUTTONS] = {0}; + Atom axes_labels[NAXES] = {0}; switch (what) { case DEVICE_INIT: @@ -341,8 +340,8 @@ static int DarwinTabletProc(DeviceIntPtr pPointer, int what) { #define NBUTTONS 3 #define NAXES 5 CARD8 map[NBUTTONS + 1] = {0, 1, 2, 3}; - Atom axes_labels[NAXES] = {0}; Atom btn_labels[NBUTTONS] = {0}; + Atom axes_labels[NAXES] = {0}; switch (what) { case DEVICE_INIT: @@ -354,6 +353,9 @@ static int DarwinTabletProc(DeviceIntPtr pPointer, int what) { axes_labels[0] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_X); axes_labels[1] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_Y); + axes_labels[2] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_PRESSURE); + axes_labels[3] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_TILT_X); + axes_labels[4] = XIGetKnownProperty(AXIS_LABEL_PROP_ABS_TILT_Y); // Set button map. InitPointerDeviceStruct((DevicePtr)pPointer, map, NBUTTONS, diff --git a/xorg-server/hw/xquartz/darwinEvents.c b/xorg-server/hw/xquartz/darwinEvents.c index 4822af479..421efcedf 100644 --- a/xorg-server/hw/xquartz/darwinEvents.c +++ b/xorg-server/hw/xquartz/darwinEvents.c @@ -43,6 +43,7 @@ in this Software without prior written authorization from The Open Group. #include "windowstr.h" #include "pixmapstr.h" #include "inputstr.h" +#include "eventstr.h" #include "mi.h" #include "scrnintstr.h" #include "mipointer.h" @@ -71,7 +72,7 @@ in this Software without prior written authorization from The Open Group. #include "applewmExt.h" /* FIXME: Abstract this better */ -void QuartzModeEQInit(void); +extern Bool QuartzModeEventHandler(int screenNum, XQuartzEvent *e, DeviceIntPtr dev); int darwin_all_modifier_flags = 0; // last known modifier state int darwin_all_modifier_mask = 0; @@ -84,7 +85,7 @@ static pthread_mutex_t fd_add_lock = PTHREAD_MUTEX_INITIALIZER; static pthread_cond_t fd_add_ready_cond = PTHREAD_COND_INITIALIZER; static pthread_t fd_add_tid = NULL; -static EventList *darwinEvents = NULL; +static EventListPtr darwinEvents = NULL; static pthread_mutex_t mieq_lock = PTHREAD_MUTEX_INITIALIZER; static pthread_cond_t mieq_ready_cond = PTHREAD_COND_INITIALIZER; @@ -190,89 +191,98 @@ static void DarwinUpdateModifiers( be moved into their own individual functions and set as handlers using mieqSetHandler. */ -static void DarwinEventHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents) { - int i; - +static void DarwinEventHandler(int screenNum, InternalEvent *ie, DeviceIntPtr dev) { + XQuartzEvent *e = &(ie->xquartz_event); + TA_SERVER(); -// DEBUG_LOG("DarwinEventHandler(%d, %p, %p, %d)\n", screenNum, xe, dev, nevents); - for (i=0; i<nevents; i++) { - switch(xe[i].u.u.type) { - case kXquartzControllerNotify: - DEBUG_LOG("kXquartzControllerNotify\n"); - AppleWMSendEvent(AppleWMControllerNotify, - AppleWMControllerNotifyMask, - xe[i].u.clientMessage.u.l.longs0, - xe[i].u.clientMessage.u.l.longs1); - break; - - case kXquartzPasteboardNotify: - DEBUG_LOG("kXquartzPasteboardNotify\n"); - AppleWMSendEvent(AppleWMPasteboardNotify, - AppleWMPasteboardNotifyMask, - xe[i].u.clientMessage.u.l.longs0, - xe[i].u.clientMessage.u.l.longs1); - break; - - case kXquartzActivate: - DEBUG_LOG("kXquartzActivate\n"); - QuartzShow(xe[i].u.keyButtonPointer.rootX, - xe[i].u.keyButtonPointer.rootY); - AppleWMSendEvent(AppleWMActivationNotify, - AppleWMActivationNotifyMask, - AppleWMIsActive, 0); - break; - - case kXquartzDeactivate: - DEBUG_LOG("kXquartzDeactivate\n"); - AppleWMSendEvent(AppleWMActivationNotify, - AppleWMActivationNotifyMask, - AppleWMIsInactive, 0); + switch(e->subtype) { + case kXquartzControllerNotify: + DEBUG_LOG("kXquartzControllerNotify\n"); + AppleWMSendEvent(AppleWMControllerNotify, + AppleWMControllerNotifyMask, + e->data[0], + e->data[1]); + break; + + case kXquartzPasteboardNotify: + DEBUG_LOG("kXquartzPasteboardNotify\n"); + AppleWMSendEvent(AppleWMPasteboardNotify, + AppleWMPasteboardNotifyMask, + e->data[0], + e->data[1]); + break; + + case kXquartzActivate: + DEBUG_LOG("kXquartzActivate\n"); + QuartzShow(); + AppleWMSendEvent(AppleWMActivationNotify, + AppleWMActivationNotifyMask, + AppleWMIsActive, 0); + break; + + case kXquartzDeactivate: + DEBUG_LOG("kXquartzDeactivate\n"); + AppleWMSendEvent(AppleWMActivationNotify, + AppleWMActivationNotifyMask, + AppleWMIsInactive, 0); + QuartzHide(); + break; + + case kXquartzReloadPreferences: + DEBUG_LOG("kXquartzReloadPreferences\n"); + AppleWMSendEvent(AppleWMActivationNotify, + AppleWMActivationNotifyMask, + AppleWMReloadPreferences, 0); + break; + + case kXquartzToggleFullscreen: + DEBUG_LOG("kXquartzToggleFullscreen\n"); + if (quartzEnableRootless) + QuartzSetFullscreen(!quartzHasRoot); + else if (quartzHasRoot) QuartzHide(); - break; - - case kXquartzReloadPreferences: - DEBUG_LOG("kXquartzReloadPreferences\n"); - AppleWMSendEvent(AppleWMActivationNotify, - AppleWMActivationNotifyMask, - AppleWMReloadPreferences, 0); - break; - - case kXquartzToggleFullscreen: - DEBUG_LOG("kXquartzToggleFullscreen\n"); - if (quartzEnableRootless) - QuartzSetFullscreen(!quartzHasRoot); - else if (quartzHasRoot) - QuartzHide(); - else - QuartzShow(xe[i].u.keyButtonPointer.rootX, - xe[i].u.keyButtonPointer.rootY); - break; - - case kXquartzSetRootless: - DEBUG_LOG("kXquartzSetRootless\n"); - QuartzSetRootless(xe[i].u.clientMessage.u.l.longs0); - if (!quartzEnableRootless && !quartzHasRoot) - QuartzHide(); - break; - - case kXquartzSetRootClip: - QuartzSetRootClip((Bool)xe[i].u.clientMessage.u.l.longs0); - break; - - case kXquartzQuit: - GiveUp(0); - break; - - case kXquartzSpaceChanged: - DEBUG_LOG("kXquartzSpaceChanged\n"); - QuartzSpaceChanged(xe[i].u.clientMessage.u.l.longs0); - break; - - default: - ErrorF("Unknown application defined event type %d.\n", xe[i].u.u.type); - } - } + else + QuartzShow(); + break; + + case kXquartzSetRootless: + DEBUG_LOG("kXquartzSetRootless\n"); + QuartzSetRootless(e->data[0]); + if (!quartzEnableRootless && !quartzHasRoot) + QuartzHide(); + break; + + case kXquartzSetRootClip: + QuartzSetRootClip((Bool)e->data[0]); + break; + + case kXquartzQuit: + GiveUp(0); + break; + + case kXquartzSpaceChanged: + DEBUG_LOG("kXquartzSpaceChanged\n"); + QuartzSpaceChanged(e->data[0]); + break; + + case kXquartzListenOnOpenFD: + ErrorF("Calling ListenOnOpenFD() for new fd: %d\n", (int)e->data[0]); + ListenOnOpenFD((int)e->data[0], 1); + break; + + case kXquartzReloadKeymap: + DarwinKeyboardReloadHandler(); + break; + + case kXquartzDisplayChanged: + QuartzUpdateScreens(); + break; + + default: + if(!QuartzModeEventHandler(screenNum, e, dev)) + ErrorF("Unknown application defined event type %d.\n", e->subtype); + } } void DarwinListenOnOpenFD(int fd) { @@ -298,16 +308,6 @@ static void DarwinProcessFDAdditionQueue_thread(void *args) { } } -static void kXquartzListenOnOpenFDHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents) { - size_t i; - TA_SERVER(); - - for (i=0; i<nevents; i++) { - ErrorF("Calling ListenOnOpenFD() for new fd: %d\n", (int)xe[i].u.clientMessage.u.l.longs0); - ListenOnOpenFD((int)xe[i].u.clientMessage.u.l.longs0, 1); - } -} - Bool DarwinEQInit(void) { int *p; @@ -320,23 +320,7 @@ Bool DarwinEQInit(void) { } mieqInit(); - mieqSetHandler(kXquartzReloadKeymap, DarwinKeyboardReloadHandler); - mieqSetHandler(kXquartzActivate, DarwinEventHandler); - mieqSetHandler(kXquartzDeactivate, DarwinEventHandler); - mieqSetHandler(kXquartzReloadPreferences, DarwinEventHandler); - mieqSetHandler(kXquartzSetRootClip, DarwinEventHandler); - mieqSetHandler(kXquartzQuit, DarwinEventHandler); - mieqSetHandler(kXquartzReadPasteboard, QuartzReadPasteboard); - mieqSetHandler(kXquartzWritePasteboard, QuartzWritePasteboard); - mieqSetHandler(kXquartzToggleFullscreen, DarwinEventHandler); - mieqSetHandler(kXquartzSetRootless, DarwinEventHandler); - mieqSetHandler(kXquartzSpaceChanged, DarwinEventHandler); - mieqSetHandler(kXquartzControllerNotify, DarwinEventHandler); - mieqSetHandler(kXquartzPasteboardNotify, DarwinEventHandler); - mieqSetHandler(kXquartzDisplayChanged, QuartzDisplayChangedHandler); - mieqSetHandler(kXquartzListenOnOpenFD, kXquartzListenOnOpenFDHandler); - - QuartzModeEQInit(); + mieqSetHandler(ET_XQuartz, DarwinEventHandler); /* Note that this *could* cause a potential async issue, since we're checking * darwinEvents without holding the lock, but darwinEvents is only ever set @@ -364,16 +348,16 @@ Bool DarwinEQInit(void) { * Read and process events from the event queue until it is empty. */ void ProcessInputEvents(void) { - xEvent xe; - int x = sizeof(xe); + char nullbyte; + int x = sizeof(nullbyte); TA_SERVER(); mieqProcessInputEvents(); // Empty the signaling pipe - while (x == sizeof(xe)) { - x = read(darwinEventReadFD, &xe, sizeof(xe)); + while (x == sizeof(nullbyte)) { + x = read(darwinEventReadFD, &nullbyte, sizeof(nullbyte)); } } @@ -382,7 +366,7 @@ void ProcessInputEvents(void) { static void DarwinPokeEQ(void) { char nullbyte=0; // <daniels> oh, i ... er ... christ. - write(darwinEventWriteFD, &nullbyte, 1); + write(darwinEventWriteFD, &nullbyte, sizeof(nullbyte)); } /* Convert from Appkit pointer input values to X input values: @@ -476,7 +460,7 @@ void DarwinSendPointerEvents(DeviceIntPtr pDev, int ev_type, int ev_button, floa darwinEvents_lock(); { num_events = GetPointerEvents(darwinEvents, pDev, ev_type, ev_button, POINTER_ABSOLUTE, 0, pDev==darwinTabletCurrent?5:2, valuators); - for(i=0; i<num_events; i++) mieqEnqueue (pDev, darwinEvents[i].event); + for(i=0; i<num_events; i++) mieqEnqueue (pDev, (InternalEvent*)darwinEvents[i].event); if(num_events > 0) DarwinPokeEQ(); } darwinEvents_unlock(); } @@ -491,7 +475,7 @@ void DarwinSendKeyboardEvents(int ev_type, int keycode) { darwinEvents_lock(); { num_events = GetKeyboardEvents(darwinEvents, darwinKeyboard, ev_type, keycode + MIN_KEYCODE); - for(i=0; i<num_events; i++) mieqEnqueue(darwinKeyboard,darwinEvents[i].event); + for(i=0; i<num_events; i++) mieqEnqueue(darwinKeyboard, (InternalEvent*)darwinEvents[i].event); if(num_events > 0) DarwinPokeEQ(); } darwinEvents_unlock(); } @@ -519,7 +503,7 @@ void DarwinSendProximityEvents(int ev_type, float pointer_x, float pointer_y) { darwinEvents_lock(); { num_events = GetProximityEvents(darwinEvents, pDev, ev_type, 0, 5, valuators); - for(i=0; i<num_events; i++) mieqEnqueue (pDev,darwinEvents[i].event); + for(i=0; i<num_events; i++) mieqEnqueue (pDev, (InternalEvent*)darwinEvents[i].event); if(num_events > 0) DarwinPokeEQ(); } darwinEvents_unlock(); } @@ -529,13 +513,14 @@ void DarwinSendProximityEvents(int ev_type, float pointer_x, float pointer_y) { void DarwinSendScrollEvents(float count_x, float count_y, float pointer_x, float pointer_y, float pressure, float tilt_x, float tilt_y) { + int sign_x, sign_y; if(!darwinEvents) { DEBUG_LOG("DarwinSendScrollEvents called before darwinEvents was initialized\n"); return; } - int sign_x = count_x > 0.0f ? SCROLLWHEELLEFTFAKE : SCROLLWHEELRIGHTFAKE; - int sign_y = count_y > 0.0f ? SCROLLWHEELUPFAKE : SCROLLWHEELDOWNFAKE; + sign_x = count_x > 0.0f ? SCROLLWHEELLEFTFAKE : SCROLLWHEELRIGHTFAKE; + sign_y = count_y > 0.0f ? SCROLLWHEELUPFAKE : SCROLLWHEELDOWNFAKE; count_x = fabs(count_x); count_y = fabs(count_y); @@ -566,27 +551,26 @@ void DarwinUpdateModKeys(int flags) { * Send the X server thread a message by placing it on the event queue. */ void DarwinSendDDXEvent(int type, int argc, ...) { - xEvent xe; - INT32 *argv; - int i, max_args; + XQuartzEvent e; + int i; va_list args; - memset(&xe, 0, sizeof(xe)); - xe.u.u.type = type; - xe.u.clientMessage.u.l.type = type; - - argv = &xe.u.clientMessage.u.l.longs0; - max_args = 4; + memset(&e, 0, sizeof(e)); + e.header = ET_Internal; + e.type = ET_XQuartz; + e.length = sizeof(e); + e.time = GetTimeInMillis(); + e.subtype = type; - if (argc > 0 && argc <= max_args) { + if (argc > 0 && argc < XQUARTZ_EVENT_MAXARGS) { va_start (args, argc); for (i = 0; i < argc; i++) - argv[i] = (int) va_arg (args, int); + e.data[i] = (uint32_t) va_arg (args, uint32_t); va_end (args); } darwinEvents_lock(); { - mieqEnqueue(NULL, &xe); + mieqEnqueue(NULL, (InternalEvent*)&e); DarwinPokeEQ(); } darwinEvents_unlock(); } diff --git a/xorg-server/hw/xquartz/darwinEvents.h b/xorg-server/hw/xquartz/darwinEvents.h index 126851422..590305f3e 100644 --- a/xorg-server/hw/xquartz/darwinEvents.h +++ b/xorg-server/hw/xquartz/darwinEvents.h @@ -45,17 +45,14 @@ void DarwinUpdateModKeys(int flags); void DarwinListenOnOpenFD(int fd); /* - * Special ddx events understood by the X server + * Subtypes for the ET_XQuartz event type */ enum { - kXquartzReloadKeymap // Reload system keymap - = LASTEvent+1, // (from X.h list of event names) + kXquartzReloadKeymap, // Reload system keymap kXquartzActivate, // restore X drawing and cursor kXquartzDeactivate, // clip X drawing and switch to Aqua cursor kXquartzSetRootClip, // enable or disable drawing to the X screen kXquartzQuit, // kill the X server and release the display - kXquartzReadPasteboard, // copy Mac OS X pasteboard into X cut buffer - kXquartzWritePasteboard, // copy X cut buffer onto Mac OS X pasteboard kXquartzBringAllToFront, // bring all X windows to front kXquartzToggleFullscreen, // Enable/Disable fullscreen mode kXquartzSetRootless, // Set rootless mode diff --git a/xorg-server/hw/xquartz/mach-startup/bundle-main.c b/xorg-server/hw/xquartz/mach-startup/bundle-main.c index e887c469d..917bbafbe 100644 --- a/xorg-server/hw/xquartz/mach-startup/bundle-main.c +++ b/xorg-server/hw/xquartz/mach-startup/bundle-main.c @@ -149,15 +149,17 @@ static int accept_fd_handoff(int connected_fd) { char databuf[] = "display"; struct iovec iov[1]; - iov[0].iov_base = databuf; - iov[0].iov_len = sizeof(databuf); - union { struct cmsghdr hdr; char bytes[CMSG_SPACE(sizeof(int))]; } buf; struct msghdr msg; + struct cmsghdr *cmsg; + + iov[0].iov_base = databuf; + iov[0].iov_len = sizeof(databuf); + msg.msg_iov = iov; msg.msg_iovlen = 1; msg.msg_control = buf.bytes; @@ -166,7 +168,7 @@ static int accept_fd_handoff(int connected_fd) { msg.msg_namelen = 0; msg.msg_flags = 0; - struct cmsghdr *cmsg = CMSG_FIRSTHDR (&msg); + cmsg = CMSG_FIRSTHDR (&msg); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; cmsg->cmsg_len = CMSG_LEN(sizeof(int)); @@ -197,6 +199,7 @@ static void socket_handoff_thread(void *arg) { socket_handoff_t *handoff_data = (socket_handoff_t *)arg; int launchd_fd = -1; int connected_fd; + unsigned remain; /* Now actually get the passed file descriptor from this connection * If we encounter an error, keep listening. @@ -229,7 +232,7 @@ static void socket_handoff_thread(void *arg) { * into it. */ - unsigned remain = 3000000; + remain = 3000000; fprintf(stderr, "X11.app: Received new $DISPLAY fd: %d ... sleeping to allow xinitrc to catchup.\n", launchd_fd); while((remain = usleep(remain)) > 0); @@ -626,11 +629,11 @@ static char *command_from_prefs(const char *key, const char *default_value) { if ((PlistRef == NULL) || (CFGetTypeID(PlistRef) != CFStringGetTypeID())) { CFStringRef cfDefaultValue = CFStringCreateWithCString(NULL, default_value, kCFStringEncodingASCII); + int len = strlen(default_value) + 1; CFPreferencesSetAppValue(cfKey, cfDefaultValue, kCFPreferencesCurrentApplication); CFPreferencesAppSynchronize(kCFPreferencesCurrentApplication); - int len = strlen(default_value) + 1; command = (char *)malloc(len * sizeof(char)); if(!command) return NULL; diff --git a/xorg-server/hw/xquartz/mach-startup/launchd_fd.c b/xorg-server/hw/xquartz/mach-startup/launchd_fd.c index fa623ea12..6dace8ea1 100644 --- a/xorg-server/hw/xquartz/mach-startup/launchd_fd.c +++ b/xorg-server/hw/xquartz/mach-startup/launchd_fd.c @@ -36,7 +36,7 @@ #include "launchd_fd.h" -int launchd_display_fd() { +int launchd_display_fd(void) { launch_data_t sockets_dict, checkin_request, checkin_response; launch_data_t listening_fd_array, listening_fd; diff --git a/xorg-server/hw/xquartz/mach-startup/stub.c b/xorg-server/hw/xquartz/mach-startup/stub.c index 7a557bd3f..3d22db5d1 100644 --- a/xorg-server/hw/xquartz/mach-startup/stub.c +++ b/xorg-server/hw/xquartz/mach-startup/stub.c @@ -69,13 +69,12 @@ static char x11_path[PATH_MAX + 1]; static pid_t x11app_pid = 0; -static void set_x11_path() { +static void set_x11_path(void) { #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 CFURLRef appURL = NULL; CFBundleRef bundle = NULL; OSStatus osstatus = LSFindApplicationForInfo(kLSUnknownCreator, CFSTR(kX11AppBundleId), nil, nil, &appURL); - UInt32 ver; switch (osstatus) { case noErr: @@ -96,20 +95,6 @@ static void set_x11_path() { exit(3); } - ver = CFBundleGetVersionNumber(bundle); - if( !(ver >= 0x02308000 || (ver >= 0x02168000 && ver < 0x02208000))) { - CFStringRef versionStr = CFBundleGetValueForInfoDictionaryKey(bundle, kCFBundleVersionKey); - const char * versionCStr = "Unknown"; - - if(versionStr) - versionCStr = CFStringGetCStringPtr(versionStr, kCFStringEncodingMacRoman); - - fprintf(stderr, "Xquartz: Could not find a new enough X11.app LSFindApplicationForInfo() returned\n"); - fprintf(stderr, " X11.app = %s\n", x11_path); - fprintf(stderr, " Version = %s (%x), Expected Version > 2.3.0 or 2.1.6\n", versionCStr, (unsigned)ver); - exit(9); - } - strlcat(x11_path, kX11AppBundlePath, sizeof(x11_path)); #ifdef DEBUG fprintf(stderr, "Xquartz: X11.app = %s\n", x11_path); @@ -162,15 +147,17 @@ static void send_fd_handoff(int connected_fd, int launchd_fd) { char databuf[] = "display"; struct iovec iov[1]; - iov[0].iov_base = databuf; - iov[0].iov_len = sizeof(databuf); - union { struct cmsghdr hdr; char bytes[CMSG_SPACE(sizeof(int))]; } buf; struct msghdr msg; + struct cmsghdr *cmsg; + + iov[0].iov_base = databuf; + iov[0].iov_len = sizeof(databuf); + msg.msg_iov = iov; msg.msg_iovlen = 1; msg.msg_control = buf.bytes; @@ -179,7 +166,7 @@ static void send_fd_handoff(int connected_fd, int launchd_fd) { msg.msg_namelen = 0; msg.msg_flags = 0; - struct cmsghdr *cmsg = CMSG_FIRSTHDR (&msg); + cmsg = CMSG_FIRSTHDR (&msg); cmsg->cmsg_level = SOL_SOCKET; cmsg->cmsg_type = SCM_RIGHTS; cmsg->cmsg_len = CMSG_LEN(sizeof(int)); @@ -245,10 +232,11 @@ int main(int argc, char **argv, char **envp) { kr = bootstrap_look_up(bootstrap_port, server_bootstrap_name, &mp); if(kr != KERN_SUCCESS) { + pid_t child; set_x11_path(); /* This forking is ugly and will be cleaned up later */ - pid_t child = fork(); + child = fork(); if(child == -1) { fprintf(stderr, "Xquartz: Could not fork: %s\n", strerror(errno)); return EXIT_FAILURE; diff --git a/xorg-server/hw/xquartz/quartz.c b/xorg-server/hw/xquartz/quartz.c index ca8b24595..c4142a801 100644 --- a/xorg-server/hw/xquartz/quartz.c +++ b/xorg-server/hw/xquartz/quartz.c @@ -231,7 +231,7 @@ RREditConnectionInfo (ScreenPtr pScreen) } #endif -static void QuartzUpdateScreens(void) { +void QuartzUpdateScreens(void) { ScreenPtr pScreen; WindowPtr pRoot; int x, y, width, height, sx, sy; @@ -299,14 +299,6 @@ static void QuartzUpdateScreens(void) { #endif } -/* - * QuartzDisplayChangeHandler - * Adjust for screen arrangement changes. - */ -void QuartzDisplayChangedHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents) { - QuartzUpdateScreens(); -} - void QuartzSetFullscreen(Bool state) { DEBUG_LOG("QuartzSetFullscreen: state=%d\n", state); @@ -374,10 +366,7 @@ void QuartzSetRootless(Bool state) { * Calls mode specific screen resume to restore the X clip regions * (if needed) and the X server cursor state. */ -void QuartzShow( - int x, // cursor location - int y ) -{ +void QuartzShow(void) { int i; if (quartzServerVisible) @@ -386,7 +375,7 @@ void QuartzShow( quartzServerVisible = TRUE; for (i = 0; i < screenInfo.numScreens; i++) { if (screenInfo.screens[i]) { - quartzProcs->ResumeScreen(screenInfo.screens[i], x, y); + quartzProcs->ResumeScreen(screenInfo.screens[i]); } } diff --git a/xorg-server/hw/xquartz/quartz.h b/xorg-server/hw/xquartz/quartz.h index c5da4c510..b1a3f3183 100644 --- a/xorg-server/hw/xquartz/quartz.h +++ b/xorg-server/hw/xquartz/quartz.h @@ -33,8 +33,6 @@ #ifndef _QUARTZ_H #define _QUARTZ_H -#include "quartzPasteboard.h" - #include "screenint.h" #include "window.h" @@ -59,7 +57,7 @@ typedef Bool (*InitCursorProc)(ScreenPtr pScreen); * Suspend and resume X11 activity */ typedef void (*SuspendScreenProc)(ScreenPtr pScreen); -typedef void (*ResumeScreenProc)(ScreenPtr pScreen, int x, int y); +typedef void (*ResumeScreenProc)(ScreenPtr pScreen); /* * Screen state change support @@ -123,13 +121,15 @@ void QuartzInitInput(int argc, char **argv); void QuartzInitServer(int argc, char **argv, char **envp); void QuartzGiveUp(void); void QuartzProcessEvent(xEvent *xe); -void QuartzDisplayChangedHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents); +void QuartzUpdateScreens(void); -void QuartzShow(int x, int y); // (x, y) = cursor loc +void QuartzShow(void); void QuartzHide(void); void QuartzSetRootClip(BOOL enable); void QuartzSpaceChanged(uint32_t space_id); void QuartzSetFullscreen(Bool state); void QuartzSetRootless(Bool state); + +int server_main(int argc, char **argv, char **envp); #endif diff --git a/xorg-server/hw/xquartz/quartzAudio.c b/xorg-server/hw/xquartz/quartzAudio.c index 8cf241738..af63d18f5 100644 --- a/xorg-server/hw/xquartz/quartzAudio.c +++ b/xorg-server/hw/xquartz/quartzAudio.c @@ -311,8 +311,10 @@ void QuartzAudioInit(void) // Prepare for playback #if MAC_OS_X_VERSION_MIN_REQUIRED >= 1050 + { AudioDeviceIOProcID sInputIOProcID = NULL; status = AudioDeviceCreateIOProcID( outputDevice, QuartzAudioIOProc, &data, &sInputIOProcID ); + } #else status = AudioDeviceAddIOProc(outputDevice, QuartzAudioIOProc, &data); #endif diff --git a/xorg-server/hw/xquartz/quartzCocoa.m b/xorg-server/hw/xquartz/quartzCocoa.m index 0ab94936c..450147207 100644 --- a/xorg-server/hw/xquartz/quartzCocoa.m +++ b/xorg-server/hw/xquartz/quartzCocoa.m @@ -40,67 +40,10 @@ #include "quartzCommon.h" #include "inputstr.h" -#include "quartzPasteboard.h" #include "darwin.h" /* - * QuartzWriteCocoaPasteboard - * Write text to the Mac OS X pasteboard. - */ -void QuartzWriteCocoaPasteboard( - char *text) -{ - NSPasteboard *pasteboard; - NSArray *pasteboardTypes; - NSString *string; - - if (! text) return; - pasteboard = [NSPasteboard generalPasteboard]; - if (! pasteboard) return; - string = [NSString stringWithCString:text]; - if (! string) return; - pasteboardTypes = [NSArray arrayWithObject:NSStringPboardType]; - - // nil owner because we don't provide type translations - [pasteboard declareTypes:pasteboardTypes owner:nil]; - [pasteboard setString:string forType:NSStringPboardType]; -} - - -/* - * QuartzReadCocoaPasteboard - * Read text from the Mac OS X pasteboard and return it as a heap string. - * The caller must free the string. - */ -char *QuartzReadCocoaPasteboard(void) -{ - NSPasteboard *pasteboard; - NSArray *pasteboardTypes; - NSString *existingType; - char *text = NULL; - - pasteboardTypes = [NSArray arrayWithObject:NSStringPboardType]; - pasteboard = [NSPasteboard generalPasteboard]; - if (! pasteboard) return NULL; - - existingType = [pasteboard availableTypeFromArray:pasteboardTypes]; - if (existingType) { - NSString *string = [pasteboard stringForType:existingType]; - char *buffer; - - if (! string) return NULL; - buffer = (char *) [string UTF8String]; - text = (char *) malloc(strlen(buffer)+1); - if (text) - strcpy(text, buffer); - } - - return text; -} - - -/* * QuartzFSUseQDCursor * Return whether the screen should use a QuickDraw cursor. */ diff --git a/xorg-server/hw/xquartz/quartzKeyboard.c b/xorg-server/hw/xquartz/quartzKeyboard.c index 4abf4af7f..d36d967a2 100644 --- a/xorg-server/hw/xquartz/quartzKeyboard.c +++ b/xorg-server/hw/xquartz/quartzKeyboard.c @@ -251,6 +251,10 @@ static void DarwinBuildModifierMaps(darwinKeyboardInfo *info) { break; case XK_Mode_switch: + info->modifierKeycodes[NX_MODIFIERKEY_ALTERNATE][0] = i; +#ifdef NX_MODIFIERKEY_RALTERNATE + info->modifierKeycodes[NX_MODIFIERKEY_RALTERNATE][0] = i; +#endif info->modMap[MIN_KEYCODE + i] = Mod1Mask; break; @@ -296,13 +300,11 @@ static void DarwinLoadKeyboardMapping(KeySymsRec *keySyms) { static void DarwinKeyboardSetDeviceKeyMap(KeySymsRec *keySyms, CARD8 *modmap) { DeviceIntPtr pDev; - pthread_mutex_lock(&keyInfo_mutex); for (pDev = inputInfo.devices; pDev; pDev = pDev->next) if ((pDev->coreEvents || pDev == inputInfo.keyboard) && pDev->key) XkbApplyMappingChange(pDev, keySyms, keySyms->minKeyCode, keySyms->maxKeyCode - keySyms->minKeyCode + 1, modmap, serverClient); - pthread_mutex_unlock(&keyInfo_mutex); } /* @@ -356,7 +358,7 @@ void DarwinKeyboardInit(DeviceIntPtr pDev) { CopyKeyClass(pDev, inputInfo.keyboard); } -void DarwinKeyboardReloadHandler(int screenNum, xEventPtr xe, DeviceIntPtr pDev, int nevents) { +void DarwinKeyboardReloadHandler(void) { KeySymsRec keySyms; DEBUG_LOG("DarwinKeyboardReloadHandler\n"); diff --git a/xorg-server/hw/xquartz/quartzKeyboard.h b/xorg-server/hw/xquartz/quartzKeyboard.h index 215a4a9a5..1aaec6ef2 100644 --- a/xorg-server/hw/xquartz/quartzKeyboard.h +++ b/xorg-server/hw/xquartz/quartzKeyboard.h @@ -53,7 +53,7 @@ Bool QuartzReadSystemKeymap(darwinKeyboardInfo *info); /* Provided for darwinEvents.c */ extern darwinKeyboardInfo keyInfo; extern pthread_mutex_t keyInfo_mutex; -void DarwinKeyboardReloadHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents); +void DarwinKeyboardReloadHandler(void); int DarwinModifierNXKeycodeToNXKey(unsigned char keycode, int *outSide); int DarwinModifierNXKeyToNXKeycode(int key, int side); int DarwinModifierNXKeyToNXMask(int key); diff --git a/xorg-server/hw/xquartz/xpr/appledri.c b/xorg-server/hw/xquartz/xpr/appledri.c index 835ccabaf..74a4ec315 100644 --- a/xorg-server/hw/xquartz/xpr/appledri.c +++ b/xorg-server/hw/xquartz/xpr/appledri.c @@ -255,10 +255,10 @@ ProcAppleDRIDestroySurface( register ClientPtr client ) { + int rc; REQUEST(xAppleDRIDestroySurfaceReq); DrawablePtr pDrawable; REQUEST_SIZE_MATCH(xAppleDRIDestroySurfaceReq); - int rc; rc = dixLookupDrawable(&pDrawable, stuff->drawable, client, 0, DixReadAccess); diff --git a/xorg-server/hw/xquartz/xpr/x-hash.h b/xorg-server/hw/xquartz/xpr/x-hash.h index 78bc7b317..f876b6b71 100644 --- a/xorg-server/hw/xquartz/xpr/x-hash.h +++ b/xorg-server/hw/xquartz/xpr/x-hash.h @@ -72,7 +72,7 @@ X_PFX (cvt_vptr_to_uint) (void * val) __attribute__((always_inline)); static __inline__ void * X_PFX (cvt_uint_to_vptr) (unsigned int val) { - return (void*)((size_t)(val)); + return (void*)((unsigned long)(val)); } static __inline__ unsigned int diff --git a/xorg-server/hw/xquartz/xpr/xpr.h b/xorg-server/hw/xquartz/xpr/xpr.h index c657e1586..af1a90ca0 100644 --- a/xorg-server/hw/xquartz/xpr/xpr.h +++ b/xorg-server/hw/xquartz/xpr/xpr.h @@ -45,7 +45,7 @@ void xprHideWindows(Bool hide); Bool QuartzInitCursor(ScreenPtr pScreen); void QuartzSuspendXCursor(ScreenPtr pScreen); -void QuartzResumeXCursor(ScreenPtr pScreen, int x, int y); +void QuartzResumeXCursor(ScreenPtr pScreen); /* If we are rooted, we need the root window and desktop levels to be below * the menubar (24) but above native windows. Normal window level is 0. diff --git a/xorg-server/hw/xquartz/xpr/xprCursor.c b/xorg-server/hw/xquartz/xpr/xprCursor.c index 8c47b671c..b577fc099 100644 --- a/xorg-server/hw/xquartz/xpr/xprCursor.c +++ b/xorg-server/hw/xquartz/xpr/xprCursor.c @@ -392,7 +392,7 @@ QuartzSuspendXCursor(ScreenPtr pScreen) * X server is showing. Restore the X cursor. */ void -QuartzResumeXCursor(ScreenPtr pScreen, int x, int y) +QuartzResumeXCursor(ScreenPtr pScreen) { WindowPtr pWin; CursorPtr pCursor; @@ -407,5 +407,5 @@ QuartzResumeXCursor(ScreenPtr pScreen, int x, int y) if (pCursor == NULL) return; - QuartzSetCursor(darwinPointer, pScreen, pCursor, x, y); + QuartzSetCursor(darwinPointer, pScreen, pCursor, /* x */ 0, /* y */ 0); } diff --git a/xorg-server/hw/xquartz/xpr/xprEvent.c b/xorg-server/hw/xquartz/xpr/xprEvent.c index f8e985aba..6245cce42 100644 --- a/xorg-server/hw/xquartz/xpr/xprEvent.c +++ b/xorg-server/hw/xquartz/xpr/xprEvent.c @@ -39,6 +39,7 @@ #include "windowstr.h" #include "pixmapstr.h" #include "inputstr.h" +#include "eventstr.h" #include "mi.h" #include "scrnintstr.h" #include "mipointer.h" @@ -55,36 +56,26 @@ #include "rootlessWindow.h" #include "xprEvent.h" -static void xprEventHandler(int screenNum, xEventPtr xe, DeviceIntPtr dev, int nevents) { - int i; - +Bool QuartzModeEventHandler(int screenNum, XQuartzEvent *e, DeviceIntPtr dev) { TA_SERVER(); - DEBUG_LOG("DarwinEventHandler(%d, %p, %p, %d)\n", screenNum, xe, dev, nevents); - for (i=0; i<nevents; i++) { - switch(xe[i].u.u.type) { - - case kXquartzWindowState: - DEBUG_LOG("kXquartzWindowState\n"); - RootlessNativeWindowStateChanged(xprGetXWindow(xe[i].u.clientMessage.u.l.longs0), - xe[i].u.clientMessage.u.l.longs1); - break; - - case kXquartzWindowMoved: - DEBUG_LOG("kXquartzWindowMoved\n"); - RootlessNativeWindowMoved(xprGetXWindow(xe[i].u.clientMessage.u.l.longs0)); - break; - - case kXquartzBringAllToFront: - DEBUG_LOG("kXquartzBringAllToFront\n"); - RootlessOrderAllWindows(); - break; - } + switch(e->subtype) { + case kXquartzWindowState: + DEBUG_LOG("kXquartzWindowState\n"); + RootlessNativeWindowStateChanged(xprGetXWindow(e->data[0]), + e->data[1]); + return TRUE; + + case kXquartzWindowMoved: + DEBUG_LOG("kXquartzWindowMoved\n"); + RootlessNativeWindowMoved(xprGetXWindow(e->data[0])); + return TRUE; + + case kXquartzBringAllToFront: + DEBUG_LOG("kXquartzBringAllToFront\n"); + RootlessOrderAllWindows(); + return TRUE; + default: + return FALSE; } } - -void QuartzModeEQInit(void) { - mieqSetHandler(kXquartzWindowState, xprEventHandler); - mieqSetHandler(kXquartzWindowMoved, xprEventHandler); - mieqSetHandler(kXquartzBringAllToFront, xprEventHandler); -} diff --git a/xorg-server/hw/xquartz/xpr/xprEvent.h b/xorg-server/hw/xquartz/xpr/xprEvent.h index 5af9dfd77..ebfa36bd8 100644 --- a/xorg-server/hw/xquartz/xpr/xprEvent.h +++ b/xorg-server/hw/xquartz/xpr/xprEvent.h @@ -29,6 +29,6 @@ #ifndef __XPR_EVENT_H__ #define __XPR_EVENT_H__ -void QuartzModeEQInit(void); +Bool QuartzModeEventHandler(int screenNum, XQuartzEvent *e, DeviceIntPtr dev); #endif diff --git a/xorg-server/hw/xquartz/xpr/xprFrame.c b/xorg-server/hw/xquartz/xpr/xprFrame.c index 6635f08d8..a3e207616 100644 --- a/xorg-server/hw/xquartz/xpr/xprFrame.c +++ b/xorg-server/hw/xquartz/xpr/xprFrame.c @@ -215,10 +215,10 @@ xprDestroyFrame(RootlessFrameID wid) static void xprMoveFrame(RootlessFrameID wid, ScreenPtr pScreen, int newX, int newY) { - TA_SERVER(); - xp_window_changes wc; + TA_SERVER(); + wc.x = newX; wc.y = newY; // ErrorF("xprMoveFrame(%d, %p, %d, %d)\n", wid, pScreen, newX, newY); @@ -272,7 +272,7 @@ static void xprRestackFrame(RootlessFrameID wid, RootlessFrameID nextWid) { } if(window_hash) { - RootlessWindowRec *winRec = x_hash_table_lookup(window_hash, x_cvt_uint_to_vptr((xp_window_id)wid), NULL); + RootlessWindowRec *winRec = x_hash_table_lookup(window_hash, wid, NULL); if(winRec) { if(quartzEnableRootless) @@ -566,8 +566,8 @@ xprHideWindows(Bool hide) TA_SERVER(); for (screen = 0; screen < screenInfo.numScreens; screen++) { - pRoot = WindowTable[screenInfo.screens[screen]->myNum]; RootlessFrameID prevWid = NULL; + pRoot = WindowTable[screenInfo.screens[screen]->myNum]; for (pWin = pRoot->firstChild; pWin; pWin = pWin->nextSib) { RootlessWindowRec *winRec = WINREC(pWin); diff --git a/xorg-server/hw/xquartz/xpr/xprScreen.c b/xorg-server/hw/xquartz/xpr/xprScreen.c index 3387ecf0a..22a727e67 100644 --- a/xorg-server/hw/xquartz/xpr/xprScreen.c +++ b/xorg-server/hw/xquartz/xpr/xprScreen.c @@ -317,11 +317,11 @@ xprAddScreen(int index, ScreenPtr pScreen) if (noPseudoramiXExtension) { - ErrorF("Warning: noPseudoramiXExtension!\n"); - CGDirectDisplayID dpy; CGRect frame; + ErrorF("Warning: noPseudoramiXExtension!\n"); + dpy = displayAtIndex(index); frame = displayScreenBounds(dpy); diff --git a/xorg-server/include/colormap.h b/xorg-server/include/colormap.h index a3467c93f..de48ce8d8 100644 --- a/xorg-server/include/colormap.h +++ b/xorg-server/include/colormap.h @@ -179,4 +179,9 @@ extern _X_EXPORT int IsMapInstalled( Colormap /*map*/, WindowPtr /*pWin*/); +extern _X_EXPORT Bool ResizeVisualArray( + ScreenPtr /* pScreen */, + int /* new_vis_count */, + DepthPtr /* depth */); + #endif /* CMAP_H */ diff --git a/xorg-server/include/dix.h b/xorg-server/include/dix.h index 49dfe3774..b1edb6c46 100644 --- a/xorg-server/include/dix.h +++ b/xorg-server/include/dix.h @@ -592,6 +592,7 @@ extern Bool IsKeyboardDevice(DeviceIntPtr dev); extern Bool IsPointerEvent(InternalEvent *event); extern Bool IsMaster(DeviceIntPtr dev); +extern _X_HIDDEN void CopyKeyClass(DeviceIntPtr device, DeviceIntPtr master); extern _X_HIDDEN int CorePointerProc(DeviceIntPtr dev, int what); extern _X_HIDDEN int CoreKeyboardProc(DeviceIntPtr dev, int what); diff --git a/xorg-server/include/events.h b/xorg-server/include/events.h index 9f6a94c5b..375173adc 100644 --- a/xorg-server/include/events.h +++ b/xorg-server/include/events.h @@ -30,6 +30,9 @@ typedef struct _DeviceChangedEvent DeviceChangedEvent; typedef struct _DGAEvent DGAEvent; #endif typedef struct _RawDeviceEvent RawDeviceEvent; +#ifdef XQUARTZ +typedef struct _XQuartzEvent XQuartzEvent; +#endif typedef union _InternalEvent InternalEvent; #endif diff --git a/xorg-server/include/eventstr.h b/xorg-server/include/eventstr.h index 509982b46..0d5b1c62a 100644 --- a/xorg-server/include/eventstr.h +++ b/xorg-server/include/eventstr.h @@ -66,6 +66,9 @@ enum EventType { ET_RawButtonPress, ET_RawButtonRelease, ET_RawMotion, +#ifdef XQUARTZ + ET_XQuartz, +#endif ET_Internal = 0xFF /* First byte */ }; @@ -210,6 +213,18 @@ struct _RawDeviceEvent } valuators; }; +#ifdef XQUARTZ +#define XQUARTZ_EVENT_MAXARGS 5 +struct _XQuartzEvent { + unsigned char header; /**< Always ET_Internal */ + enum EventType type; /**< Always ET_XQuartz */ + int length; /**< Length in bytes */ + Time time; /**< Time in ms. */ + int subtype; /**< Subtype defined by XQuartz DDX */ + uint32_t data[XQUARTZ_EVENT_MAXARGS]; /**< Up to 5 32bit values passed to handler */ +}; +#endif + /** * Event type used inside the X server for input event * processing. @@ -227,6 +242,9 @@ union _InternalEvent { DGAEvent dga_event; #endif RawDeviceEvent raw_event; +#ifdef XQUARTZ + XQuartzEvent xquartz_event; +#endif }; #endif diff --git a/xorg-server/mi/mieq.c b/xorg-server/mi/mieq.c index 4c6c3bdc6..9b6d0c901 100644 --- a/xorg-server/mi/mieq.c +++ b/xorg-server/mi/mieq.c @@ -323,7 +323,8 @@ CopyGetMasterEvent(DeviceIntPtr sdev, CHECKEVENT(original); - if (!sdev->u.master) + /* ET_XQuartz has sdev == NULL */ + if (!sdev || !sdev->u.master) return NULL; switch(original->any.type) diff --git a/xorg-server/mi/miexpose.c b/xorg-server/mi/miexpose.c index 6ce56ee85..1c9c3a436 100644 --- a/xorg-server/mi/miexpose.c +++ b/xorg-server/mi/miexpose.c @@ -518,6 +518,14 @@ miWindowExposures( WindowPtr pWin, RegionPtr prgn, RegionPtr other_exposed) REGION_DESTROY( pWin->drawable.pScreen, exposures); } +#ifdef ROOTLESS +/* Ugly, ugly, but we lost our hooks into miPaintWindow... =/ */ +void RootlessSetPixmapOfAncestors(WindowPtr pWin); +void RootlessStartDrawing(WindowPtr pWin); +void RootlessDamageRegion(WindowPtr pWin, RegionPtr prgn); +Bool IsFramedWindow(WindowPtr pWin); +#endif + void miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) { @@ -543,6 +551,19 @@ miPaintWindow(WindowPtr pWin, RegionPtr prgn, int what) Bool solid = TRUE; DrawablePtr drawable = &pWin->drawable; +#ifdef ROOTLESS + if(IsFramedWindow(pWin)) { + RootlessStartDrawing(pWin); + RootlessDamageRegion(pWin, prgn); + + if(pWin->backgroundState == ParentRelative) { + if((what == PW_BACKGROUND) || + (what == PW_BORDER && !pWin->borderIsPixel)) + RootlessSetPixmapOfAncestors(pWin); + } + } +#endif + if (what == PW_BACKGROUND) { while (pWin->backgroundState == ParentRelative) diff --git a/xorg-server/mi/miinitext.c b/xorg-server/mi/miinitext.c index 7f59126a4..0dca390bb 100644 --- a/xorg-server/mi/miinitext.c +++ b/xorg-server/mi/miinitext.c @@ -55,6 +55,18 @@ SOFTWARE. #ifdef HAVE_DMX_CONFIG_H #include <dmx-config.h> +#undef MULTIBUFFER +#undef XV +#undef DBE +#undef XF86VIDMODE +#undef XFreeXDGA +#undef XF86DRI +#undef SCREENSAVER +#undef RANDR +#undef XFIXES +#undef DAMAGE +#undef COMPOSITE +#undef MITSHM #endif #ifdef HAVE_XNEST_CONFIG_H diff --git a/xorg-server/miext/rootless/rootlessWindow.c b/xorg-server/miext/rootless/rootlessWindow.c index e273d0e38..d43301fc1 100644 --- a/xorg-server/miext/rootless/rootlessWindow.c +++ b/xorg-server/miext/rootless/rootlessWindow.c @@ -1684,3 +1684,29 @@ RootlessShowAllWindows (void) RootlessScreenExpose (pScreen); } } + +/* + * SetPixmapOfAncestors + * Set the Pixmaps on all ParentRelative windows up the ancestor chain. + */ +void +RootlessSetPixmapOfAncestors(WindowPtr pWin) +{ + ScreenPtr pScreen = pWin->drawable.pScreen; + WindowPtr topWin = TopLevelParent(pWin); + RootlessWindowRec *topWinRec = WINREC(topWin); + + while (pWin->backgroundState == ParentRelative) { + if (pWin == topWin) { + // disallow ParentRelative background state on top level + XID pixel = 0; + ChangeWindowAttributes(pWin, CWBackPixel, &pixel, serverClient); + RL_DEBUG_MSG("Cleared ParentRelative on 0x%x.\n", pWin); + break; + } + + pWin = pWin->parent; + pScreen->SetWindowPixmap(pWin, topWinRec->pixmap); + } +} + diff --git a/xorg-server/os/Makefile.am b/xorg-server/os/Makefile.am index f89da6ba2..9ce8ff274 100644 --- a/xorg-server/os/Makefile.am +++ b/xorg-server/os/Makefile.am @@ -41,6 +41,7 @@ endif EXTRA_DIST = $(SECURERPC_SRCS) $(INTERNALMALLOC_SRCS) \ $(XDMCP_SRCS) $(STRLCAT_SRCS) +if !XQUARTZ if XSERVER_DTRACE # Generate dtrace object code for probes in libos & libdix dtrace.o: $(top_srcdir)/dix/Xserver.d $(am_libos_la_OBJECTS) @@ -51,6 +52,7 @@ noinst_PROGRAMS = os.O os.O: dtrace.o $(am_libos_la_OBJECTS) ld -r -o $@ dtrace.o .libs/*.o endif +endif os.c: touch $@ diff --git a/xorg-server/os/Makefile.in b/xorg-server/os/Makefile.in index 5bf1fec05..7409441ec 100644 --- a/xorg-server/os/Makefile.in +++ b/xorg-server/os/Makefile.in @@ -38,7 +38,7 @@ host_triplet = @host@ @SECURE_RPC_TRUE@am__append_1 = $(SECURERPC_SRCS) @XDMCP_TRUE@am__append_2 = $(XDMCP_SRCS) @NEED_STRLCAT_TRUE@am__append_3 = $(STRLCAT_SRCS) -@XSERVER_DTRACE_TRUE@noinst_PROGRAMS = os.O$(EXEEXT) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@noinst_PROGRAMS = os.O$(EXEEXT) subdir = os DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 @@ -473,6 +473,9 @@ clean-noinstPROGRAMS: list=`for p in $$list; do echo "$$p"; done | sed 's/$(EXEEXT)$$//'`; \ echo " rm -f" $$list; \ rm -f $$list +@XQUARTZ_TRUE@os.O$(EXEEXT): $(os_O_OBJECTS) $(os_O_DEPENDENCIES) +@XQUARTZ_TRUE@ @rm -f os.O$(EXEEXT) +@XQUARTZ_TRUE@ $(AM_V_CCLD)$(LINK) $(os_O_OBJECTS) $(os_O_LDADD) $(LIBS) @XSERVER_DTRACE_FALSE@os.O$(EXEEXT): $(os_O_OBJECTS) $(os_O_DEPENDENCIES) @XSERVER_DTRACE_FALSE@ @rm -f os.O$(EXEEXT) @XSERVER_DTRACE_FALSE@ $(AM_V_CCLD)$(LINK) $(os_O_OBJECTS) $(os_O_LDADD) $(LIBS) @@ -736,11 +739,11 @@ uninstall-am: # Generate dtrace object code for probes in libos & libdix -@XSERVER_DTRACE_TRUE@dtrace.o: $(top_srcdir)/dix/Xserver.d $(am_libos_la_OBJECTS) -@XSERVER_DTRACE_TRUE@ $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o ../dix/.libs/*.o +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@dtrace.o: $(top_srcdir)/dix/Xserver.d $(am_libos_la_OBJECTS) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@ $(DTRACE) -G -C -o $@ -s $(top_srcdir)/dix/Xserver.d .libs/*.o ../dix/.libs/*.o -@XSERVER_DTRACE_TRUE@os.O: dtrace.o $(am_libos_la_OBJECTS) -@XSERVER_DTRACE_TRUE@ ld -r -o $@ dtrace.o .libs/*.o +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@os.O: dtrace.o $(am_libos_la_OBJECTS) +@XQUARTZ_FALSE@@XSERVER_DTRACE_TRUE@ ld -r -o $@ dtrace.o .libs/*.o os.c: touch $@ diff --git a/xorg-server/render/glyph.c b/xorg-server/render/glyph.c index 7c044aada..7fcdfd9d1 100644 --- a/xorg-server/render/glyph.c +++ b/xorg-server/render/glyph.c @@ -272,13 +272,32 @@ CheckDuplicates (GlyphHashPtr hash, char *where) #define DuplicateRef(a,b) #endif +static void +FreeGlyphPicture(GlyphPtr glyph) +{ + PictureScreenPtr ps; + int i; + + for (i = 0; i < screenInfo.numScreens; i++) + { + ScreenPtr pScreen = screenInfo.screens[i]; + + if (GlyphPicture(glyph)[i]) + FreePicture ((pointer) GlyphPicture (glyph)[i], 0); + + ps = GetPictureScreenIfSet (pScreen); + if (ps) + (*ps->UnrealizeGlyph) (pScreen, glyph); + } +} + + void FreeGlyph (GlyphPtr glyph, int format) { CheckDuplicates (&globalGlyphs[format], "FreeGlyph"); if (--glyph->refcnt == 0) { - PictureScreenPtr ps; GlyphRefPtr gr; int i; int first; @@ -305,17 +324,7 @@ FreeGlyph (GlyphPtr glyph, int format) globalGlyphs[format].tableEntries--; } - for (i = 0; i < screenInfo.numScreens; i++) - { - ScreenPtr pScreen = screenInfo.screens[i]; - - FreePicture ((pointer) GlyphPicture (glyph)[i], 0); - - ps = GetPictureScreenIfSet (pScreen); - if (ps) - (*ps->UnrealizeGlyph) (pScreen, glyph); - } - + FreeGlyphPicture(glyph); FreeGlyphPrivates(glyph); xfree (glyph); } @@ -334,15 +343,7 @@ AddGlyph (GlyphSetPtr glyphSet, GlyphPtr glyph, Glyph id) TRUE, glyph->sha1); if (gr->glyph && gr->glyph != DeletedGlyph && gr->glyph != glyph) { - PictureScreenPtr ps; - int i; - - for (i = 0; i < screenInfo.numScreens; i++) - { - ps = GetPictureScreenIfSet (screenInfo.screens[i]); - if (ps) - (*ps->UnrealizeGlyph) (screenInfo.screens[i], glyph); - } + FreeGlyphPicture(glyph); FreeGlyphPrivates(glyph); xfree (glyph); glyph = gr->glyph; @@ -414,6 +415,7 @@ AllocateGlyph (xGlyphInfo *gi, int fdepth) for (i = 0; i < screenInfo.numScreens; i++) { + GlyphPicture(glyph)[i] = NULL; ps = GetPictureScreenIfSet (screenInfo.screens[i]); if (ps) @@ -721,32 +723,35 @@ miGlyphs (CARD8 op, glyph = *glyphs++; pPicture = GlyphPicture (glyph)[pScreen->myNum]; - if (maskFormat) - { - CompositePicture (PictOpAdd, - pPicture, - None, - pMask, - 0, 0, - 0, 0, - x - glyph->info.x, - y - glyph->info.y, - glyph->info.width, - glyph->info.height); - } - else + if (pPicture) { - CompositePicture (op, - pSrc, - pPicture, - pDst, - xSrc + (x - glyph->info.x) - xDst, - ySrc + (y - glyph->info.y) - yDst, - 0, 0, - x - glyph->info.x, - y - glyph->info.y, - glyph->info.width, - glyph->info.height); + if (maskFormat) + { + CompositePicture (PictOpAdd, + pPicture, + None, + pMask, + 0, 0, + 0, 0, + x - glyph->info.x, + y - glyph->info.y, + glyph->info.width, + glyph->info.height); + } + else + { + CompositePicture (op, + pSrc, + pPicture, + pDst, + xSrc + (x - glyph->info.x) - xDst, + ySrc + (y - glyph->info.y) - yDst, + 0, 0, + x - glyph->info.x, + y - glyph->info.y, + glyph->info.width, + glyph->info.height); + } } x += glyph->info.xOff; diff --git a/xorg-server/render/picture.c b/xorg-server/render/picture.c index a3670778e..e1a297203 100644 --- a/xorg-server/render/picture.c +++ b/xorg-server/render/picture.c @@ -223,9 +223,8 @@ PictureCreateDefaultFormats (ScreenPtr pScreen, int *nformatp) b = Ones (pVisual->blueMask); type = PICT_TYPE_OTHER; /* - * Current rendering code supports only two direct formats, + * Current rendering code supports only three direct formats, * fields must be packed together at the bottom of the pixel - * and must be either RGB or BGR */ if (pVisual->offsetBlue == 0 && pVisual->offsetGreen == b && @@ -322,8 +321,6 @@ PictureCreateDefaultFormats (ScreenPtr pScreen, int *nformatp) PICT_x8r8g8b8, pDepth->depth); nformats = addFormat (formats, nformats, PICT_x8b8g8r8, pDepth->depth); - nformats = addFormat (formats, nformats, - PICT_b8g8r8x8, pDepth->depth); } if (pDepth->depth >= 30) { diff --git a/xorg-server/render/render.c b/xorg-server/render/render.c index a3067665e..a32d797a7 100644 --- a/xorg-server/render/render.c +++ b/xorg-server/render/render.c @@ -1043,7 +1043,7 @@ ProcRenderAddGlyphs (ClientPtr client) CARD32 *gids; xGlyphInfo *gi; CARD8 *bits; - int size; + unsigned int size; int err; int i, screen; PicturePtr pSrc = NULL, pDst = NULL; @@ -1131,6 +1131,10 @@ ProcRenderAddGlyphs (ClientPtr client) ScreenPtr pScreen; int error; + /* Skip work if it's invisibly small anyway */ + if (!width || !height) + break; + pScreen = screenInfo.screens[screen]; pSrcPix = GetScratchPixmapHeader (pScreen, width, height, diff --git a/xorg-server/xkbdata.src/ChangeLog b/xorg-server/xkbdata.src/ChangeLog index 53c9b6db1..5fe30413e 100644 --- a/xorg-server/xkbdata.src/ChangeLog +++ b/xorg-server/xkbdata.src/ChangeLog @@ -1,3 +1,7 @@ +2009-09-29 Sergey Udaltsov + + * configure.in, NEWS, po/*.po: preparing 1.7 + 2009-09-15 Sergey Udaltsov * symbols/es: addind dead_tilde, diff --git a/xorg-server/xkbdata.src/NEWS b/xorg-server/xkbdata.src/NEWS index cba14ad17..f01db566b 100644 --- a/xorg-server/xkbdata.src/NEWS +++ b/xorg-server/xkbdata.src/NEWS @@ -1,3 +1,4 @@ +1.7 Bugfixes (30). Updated/new translations. Some new layouts and models. 1.6 Bugfixes (36). Updated/new translations. Some new layouts and models. Added terminate:* group Dropped locale-specific models diff --git a/xorg-server/xkbdata.src/compat/compat.dir b/xorg-server/xkbdata.src/compat/compat.dir index 04a9667d9..c99d7fbaf 100644 --- a/xorg-server/xkbdata.src/compat/compat.dir +++ b/xorg-server/xkbdata.src/compat/compat.dir @@ -1,29 +1,29 @@ +-d------ -------- pc98(basic) +-d------ -------- xtest(xtest) -dp----- -------- misc(misc) --dp----- -------- lednum(num_lock) ---p----- -------- lednum(group_lock) ---p----- -------- lednum(shift_lock) --dp----- -------- pc(pc) -dp----- -------- mousekeys(mousekeys) --d------ -------- xtest(xtest) --d------ -------- pc98(basic) +-dp----- -------- norepeat(norepeat) +-dp----- -------- ledcaps(caps_lock) +--p----- -------- ledcaps(group_lock) +--p----- -------- ledcaps(shift_lock) -dp----- -------- japan(japan) --p----- -------- japan(kana_lock) --dp----- -------- norepeat(norepeat) +-d------ -------- default(default) +-d------ -------- complete(complete) +-dp----- -------- iso9995(default) h-p----- -------- keypad(overlay) h-p----- -------- keypad(overlay1) h-p----- -------- keypad(overlay2) --d------ -------- default(default) --dp----- -------- xfree86(basic) --dp----- -------- iso9995(default) --d------ -------- complete(complete) --d------ -------- olpc(olpc) --dp----- -------- level5(default) --dp----- -------- ledcaps(caps_lock) ---p----- -------- ledcaps(group_lock) ---p----- -------- ledcaps(shift_lock) -d------ -------- basic(basic) +-dp----- -------- level5(default) +-dp----- -------- lednum(num_lock) +--p----- -------- lednum(group_lock) +--p----- -------- lednum(shift_lock) -dp----- -------- ledscroll(scroll_lock) --p----- -------- ledscroll(group_lock) --p----- -------- ledscroll(shift_lock) +-dp----- -------- pc(pc) +-d------ -------- olpc(olpc) -dp----- -------- accessx(basic) --p----- -------- accessx(full) +-dp----- -------- xfree86(basic) diff --git a/xorg-server/xkbdata.src/configure b/xorg-server/xkbdata.src/configure index 1fee6dc02..adf3161e4 100644 --- a/xorg-server/xkbdata.src/configure +++ b/xorg-server/xkbdata.src/configure @@ -1,6 +1,6 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for xkeyboard-config 1.6.99. +# Generated by GNU Autoconf 2.63 for xkeyboard-config 1.7. # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, # 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. @@ -594,8 +594,8 @@ SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='xkeyboard-config' PACKAGE_TARNAME='xkeyboard-config' -PACKAGE_VERSION='1.6.99' -PACKAGE_STRING='xkeyboard-config 1.6.99' +PACKAGE_VERSION='1.7' +PACKAGE_STRING='xkeyboard-config 1.7' PACKAGE_BUGREPORT='' ac_unique_file="rules/base.xml.in" @@ -1342,7 +1342,7 @@ if test "$ac_init_help" = "long"; then # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures xkeyboard-config 1.6.99 to adapt to many kinds of systems. +\`configure' configures xkeyboard-config 1.7 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1409,7 +1409,7 @@ fi if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of xkeyboard-config 1.6.99:";; + short | recursive ) echo "Configuration of xkeyboard-config 1.7:";; esac cat <<\_ACEOF @@ -1506,7 +1506,7 @@ fi test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -xkeyboard-config configure 1.6.99 +xkeyboard-config configure 1.7 generated by GNU Autoconf 2.63 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, @@ -1520,7 +1520,7 @@ cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by xkeyboard-config $as_me 1.6.99, which was +It was created by xkeyboard-config $as_me 1.7, which was generated by GNU Autoconf 2.63. Invocation command line was $ $0 $@ @@ -2237,7 +2237,7 @@ fi # Define the identity of the package. PACKAGE='xkeyboard-config' - VERSION='1.6.99' + VERSION='1.7' cat >>confdefs.h <<_ACEOF @@ -7029,7 +7029,7 @@ exec 6>&1 # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by xkeyboard-config $as_me 1.6.99, which was +This file was extended by xkeyboard-config $as_me 1.7, which was generated by GNU Autoconf 2.63. Invocation command line was CONFIG_FILES = $CONFIG_FILES @@ -7083,7 +7083,7 @@ Report bugs to <bug-autoconf@gnu.org>." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -xkeyboard-config config.status 1.6.99 +xkeyboard-config config.status 1.7 configured by $0, generated by GNU Autoconf 2.63, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" diff --git a/xorg-server/xkbdata.src/configure.in b/xorg-server/xkbdata.src/configure.in index 799ccf87f..74cd522dd 100644 --- a/xorg-server/xkbdata.src/configure.in +++ b/xorg-server/xkbdata.src/configure.in @@ -1,4 +1,4 @@ -AC_INIT(xkeyboard-config, 1.6.99) +AC_INIT(xkeyboard-config, 1.7) AC_CONFIG_SRCDIR(rules/base.xml.in) AM_INIT_AUTOMAKE([dist-bzip2]) AM_MAINTAINER_MODE diff --git a/xorg-server/xkbdata.src/geometry/geometry.dir b/xorg-server/xkbdata.src/geometry/geometry.dir index 41d54d2b5..fb1c401a3 100644 --- a/xorg-server/xkbdata.src/geometry/geometry.dir +++ b/xorg-server/xkbdata.src/geometry/geometry.dir @@ -1,8 +1,31 @@ --d------ -------- everex(STEPnote) -d------ -------- macintosh(macintosh) -------- -------- macintosh(applepro) -------- -------- macintosh(macbook78) -------- -------- macintosh(macbook79) +-d------ -------- winbook(XP5) +-d------ -------- kinesis(model100) +-------- -------- typematrix(tm2020) +-------- -------- typematrix(tm2030_shape) +-------- -------- typematrix(tm2030_MiscDiod_dvk) +-------- -------- typematrix(tm2030_MiscDiod_102) +-------- -------- typematrix(tm2030_MiscDiod_106) +-------- -------- typematrix(tm2030_MiscDiod_off) +-------- -------- typematrix(tm2030_MiscDiod_on) +-------- -------- typematrix(tm2030USB_func) +-------- -------- typematrix(tm2030USB_alpha) +-------- -------- typematrix(tm2030USB_ctrl) +-------- -------- typematrix(tm2030PS2) +-------- -------- typematrix(tm2030USB) +-------- -------- typematrix(tm2030USB-102) +-------- -------- typematrix(tm2030USB-106) +-d------ -------- northgate(omnikey101) +-d------ -------- sony(nwp5461) +-------- -------- thinkpad(common) +-------- -------- thinkpad(us) +-------- -------- thinkpad(intl) +-------- -------- thinkpad(60) +-d------ -------- fujitsu(138) +-------- -------- fujitsu(140) -------- -------- sun(type4) -------- -------- sun(type4tuv) -------- -------- sun(type4_ca) @@ -36,8 +59,14 @@ -------- -------- sun(x86) -------- -------- sun(MS_x86) -------- -------- sun(x86tuv) --d------ -------- fujitsu(138) --------- -------- fujitsu(140) +-d------ -------- amiga(usa1) +-------- -------- amiga(de) +-d------ -------- microsoft(natural) +-------- -------- microsoft(elite) +-d------ -------- hp(pc101) +-------- -------- hp(hil) +-------- -------- hp(omnibook) +-------- -------- hp(omnibook_intl) -d------ -------- pc(pc101) -------- -------- pc(pc102) -------- -------- pc(pc104) @@ -48,6 +77,7 @@ -------- -------- pc(kr106) -------- -------- pc(latitude) -------- -------- pc(pc104alt) +-d------ -------- chicony(us) -d------ -------- hhk(win1) -------- -------- hhk(win2) -------- -------- hhk(win3) @@ -57,36 +87,27 @@ -------- -------- hhk(jp3) -------- -------- hhk(jp4) h-p----- -------- hhk(basic) --d------ -------- kinesis(model100) --d------ -------- hp(pc101) --------- -------- hp(hil) --------- -------- hp(omnibook) --------- -------- hp(omnibook_intl) --d------ -------- microsoft(natural) --------- -------- microsoft(elite) --d------ -------- keytronic(FlexPro) --d------ -------- northgate(omnikey101) --d------ -------- sgi_vndr/indy(pc101) --------- -------- sgi_vndr/indy(pc102) --------- -------- sgi_vndr/indy(jp106) -d------ -------- sgi_vndr/O2(pc101) -------- -------- sgi_vndr/O2(pc102) -------- -------- sgi_vndr/O2(jp106) -d------ -------- sgi_vndr/indigo(pc101) -------- -------- sgi_vndr/indigo(pc102) --d------ -------- sony(nwp5461) --d------ -------- winbook(XP5) --d------ -------- ataritt(us) --------- -------- ataritt(de) --------- -------- thinkpad(common) --------- -------- thinkpad(us) --------- -------- thinkpad(intl) --------- -------- thinkpad(60) +-d------ -------- sgi_vndr/indy(pc101) +-------- -------- sgi_vndr/indy(pc102) +-------- -------- sgi_vndr/indy(jp106) +-d------ -------- keytronic(FlexPro) -d------ -------- dell(dell101) -------- -------- dell(dell65) -------- -------- dell(dell65x) -------- -------- dell(dellm65) -------- -------- dell(latitude) +-d------ -------- everex(STEPnote) +-d------ -------- nec(pc98) +-------- -------- digital_vndr/lk(lk201) +-------- -------- digital_vndr/lk(lk401) +-------- -------- digital_vndr/lk(lk450) +-------- -------- digital_vndr/lk(lk401bj) +-------- -------- digital_vndr/lk(lk401jj) --p----- -------- digital_vndr/pc(common) --p----- -------- digital_vndr/pc(leds_on_keys) --p----- -------- digital_vndr/pc(leds_alone) @@ -95,26 +116,5 @@ h-p----- -------- hhk(basic) -------- -------- digital_vndr/pc(pcxaj) -------- -------- digital_vndr/unix(unix) -------- -------- digital_vndr/unix(lk421jj) --------- -------- digital_vndr/lk(lk201) --------- -------- digital_vndr/lk(lk401) --------- -------- digital_vndr/lk(lk450) --------- -------- digital_vndr/lk(lk401bj) --------- -------- digital_vndr/lk(lk401jj) --------- -------- typematrix(tm2020) --------- -------- typematrix(tm2030_shape) --------- -------- typematrix(tm2030_MiscDiod_dvk) --------- -------- typematrix(tm2030_MiscDiod_102) --------- -------- typematrix(tm2030_MiscDiod_106) --------- -------- typematrix(tm2030_MiscDiod_off) --------- -------- typematrix(tm2030_MiscDiod_on) --------- -------- typematrix(tm2030USB_func) --------- -------- typematrix(tm2030USB_alpha) --------- -------- typematrix(tm2030USB_ctrl) --------- -------- typematrix(tm2030PS2) --------- -------- typematrix(tm2030USB) --------- -------- typematrix(tm2030USB-102) --------- -------- typematrix(tm2030USB-106) --d------ -------- chicony(us) --d------ -------- nec(pc98) --d------ -------- amiga(usa1) --------- -------- amiga(de) +-d------ -------- ataritt(us) +-------- -------- ataritt(de) diff --git a/xorg-server/xkbdata.src/keycodes/keycodes.dir b/xorg-server/xkbdata.src/keycodes/keycodes.dir index f1d572ad5..82b39e37a 100644 --- a/xorg-server/xkbdata.src/keycodes/keycodes.dir +++ b/xorg-server/xkbdata.src/keycodes/keycodes.dir @@ -1,6 +1,14 @@ -d------ -------- macintosh(macintosh) -------- -------- macintosh(old) -------- -------- macintosh(hhk) +-d------ -------- aliases(qwerty) +-------- -------- aliases(azerty) +-------- -------- aliases(qwertz) +-------- -------- sony(nwp5461) +-d------ -------- fujitsu(138) +-d------ -------- xfree98(pc98) +-d------ -------- evdev(evdev) +-------- -------- evdev(pc98) -d------ -------- sun(type4) -------- -------- sun(type5) -------- -------- sun(type4tuv) @@ -26,12 +34,12 @@ -------- -------- sun(type4__se) -------- -------- sun(type4_se) -------- -------- sun(type4_se_swapctl) --d------ -------- xfree98(pc98) --d------ -------- fujitsu(138) +-d------ -------- amiga(usa1) +-------- -------- amiga(de) -d------ -------- hp(hp-101) -------- -------- hp(hil) --------- -------- ibm(rs6k-101) --------- -------- ibm(rs6k-102) +-d------ -------- sgi_vndr/indigo(pc101) +-------- -------- sgi_vndr/indigo(pc102) -d------ -------- sgi_vndr/indy(universal) -------- -------- sgi_vndr/indy(pc101) -------- -------- sgi_vndr/indy(pc102) @@ -40,28 +48,9 @@ -------- -------- sgi_vndr/indy(jp106) h-p----- -------- sgi_vndr/indy(overlayKeypad) h-p----- -------- sgi_vndr/indy(shiftLock) --d------ -------- sgi_vndr/indigo(pc101) --------- -------- sgi_vndr/indigo(pc102) -d------ -------- sgi_vndr/iris(iris) --------- -------- sony(nwp5461) --d------ -------- evdev(evdev) --------- -------- evdev(pc98) --d------ -------- xfree86(xfree86) --------- -------- xfree86(basic) --------- -------- xfree86(102) --------- -------- xfree86(thinkpadz60) --d------ -------- ataritt(us) --------- -------- ataritt(de) --------- -------- digital_vndr/pc(pc_common) --------- -------- digital_vndr/pc(pc10x) --------- -------- digital_vndr/pc(pc101) --------- -------- digital_vndr/pc(pc102) --------- -------- digital_vndr/pc(pc104) --------- -------- digital_vndr/pc(lk411_common) --------- -------- digital_vndr/pc(lk411) --------- -------- digital_vndr/pc(lk450) --------- -------- digital_vndr/pc(pcxajaa) --------- -------- digital_vndr/pc(lk411jj) +-------- -------- ibm(rs6k-101) +-------- -------- ibm(rs6k-102) -------- -------- digital_vndr/lk(lk_common) -------- -------- digital_vndr/lk(lkx01) -------- -------- digital_vndr/lk(lk201) @@ -74,8 +63,19 @@ h-p----- -------- sgi_vndr/indy(shiftLock) -------- -------- digital_vndr/lk(lk421jj) -------- -------- digital_vndr/lk(lk401bj) -------- -------- digital_vndr/lk(lk401jj) --d------ -------- aliases(qwerty) --------- -------- aliases(azerty) --------- -------- aliases(qwertz) --d------ -------- amiga(usa1) --------- -------- amiga(de) +-------- -------- digital_vndr/pc(pc_common) +-------- -------- digital_vndr/pc(pc10x) +-------- -------- digital_vndr/pc(pc101) +-------- -------- digital_vndr/pc(pc102) +-------- -------- digital_vndr/pc(pc104) +-------- -------- digital_vndr/pc(lk411_common) +-------- -------- digital_vndr/pc(lk411) +-------- -------- digital_vndr/pc(lk450) +-------- -------- digital_vndr/pc(pcxajaa) +-------- -------- digital_vndr/pc(lk411jj) +-d------ -------- ataritt(us) +-------- -------- ataritt(de) +-d------ -------- xfree86(xfree86) +-------- -------- xfree86(basic) +-------- -------- xfree86(102) +-------- -------- xfree86(thinkpadz60) diff --git a/xorg-server/xkbdata.src/keymap/keymap.dir b/xorg-server/xkbdata.src/keymap/keymap.dir index 7b8f07a92..6dbb8f1b7 100644 --- a/xorg-server/xkbdata.src/keymap/keymap.dir +++ b/xorg-server/xkbdata.src/keymap/keymap.dir @@ -1,135 +1,11 @@ -d------ -------- macintosh(macintosh) -------- -------- macintosh(macintosh_old) --d------ -------- xfree98(jp) --d------ -------- sgi_vndr/fr(indy) --------- -------- sgi_vndr/fr(indy_nodeadkeys) --------- -------- sgi_vndr/fr(indigo) --------- -------- sgi_vndr/fr(indigo_nodeadkeys) --d------ -------- sgi_vndr/dvorak(indy) --------- -------- sgi_vndr/dvorak(indigo) --d------ -------- sgi_vndr/ch(de_indy) --------- -------- sgi_vndr/ch(de_indy_nodeadkeys) --------- -------- sgi_vndr/ch(de_indigo) --------- -------- sgi_vndr/ch(de_indigo_nodeadkeys) --------- -------- sgi_vndr/ch(fr_indy) --------- -------- sgi_vndr/ch(fr_indy_nodeadkeys) --------- -------- sgi_vndr/ch(fr_indigo) --------- -------- sgi_vndr/ch(fr_indigo_nodeadkeys) --d------ -------- sgi_vndr/pl(indy) --------- -------- sgi_vndr/pl(indy_nodeadkeys) --------- -------- sgi_vndr/pl(indigo) --------- -------- sgi_vndr/pl(indigo_nodeadkeys) --d------ -------- sgi_vndr/th(indy) --------- -------- sgi_vndr/th(indigo) --d------ -------- sgi_vndr/no(indy) --------- -------- sgi_vndr/no(indy_nodeadkeys) --------- -------- sgi_vndr/no(indigo) --------- -------- sgi_vndr/no(indigo_nodeadkeys) --d------ -------- sgi_vndr/es(indy) --------- -------- sgi_vndr/es(indy_nodeadkeys) --------- -------- sgi_vndr/es(indigo) --------- -------- sgi_vndr/es(indigo_nodeadkeys) --d------ -------- sgi_vndr/cz(indy) --------- -------- sgi_vndr/cz(indigo) --------- -------- sgi_vndr/cz(indy_qwerty) --------- -------- sgi_vndr/cz(indigo_qwerty) --d------ -------- sgi_vndr/hu(indy) --------- -------- sgi_vndr/hu(indy_toggle) --------- -------- sgi_vndr/hu(indy_shift_toggle) --------- -------- sgi_vndr/hu(indy_ctrl_shift_toggle) --------- -------- sgi_vndr/hu(indy_ctrl_alt_toggle) --------- -------- sgi_vndr/hu(indy_caps_toggle) --------- -------- sgi_vndr/hu(indigo) --------- -------- sgi_vndr/hu(indigo_toggle) --------- -------- sgi_vndr/hu(indigo_shift_toggle) --------- -------- sgi_vndr/hu(indigo_ctrl_shift_toggle) --------- -------- sgi_vndr/hu(indigo_ctrl_alt_toggle) --------- -------- sgi_vndr/hu(indigo_caps_toggle) --d------ -------- sgi_vndr/en_US(indy) --------- -------- sgi_vndr/en_US(indy_nodeadkeys) --------- -------- sgi_vndr/en_US(indy101) --------- -------- sgi_vndr/en_US(indy101_nodeadkeys) --------- -------- sgi_vndr/en_US(indy104) --------- -------- sgi_vndr/en_US(indy104_nodeadkeys) --------- -------- sgi_vndr/en_US(indigo) --------- -------- sgi_vndr/en_US(indigo_nodeadkeys) --d------ -------- sgi_vndr/jp(indy) --d------ -------- sgi_vndr/gb(indy) --------- -------- sgi_vndr/gb(indy_nodeadkeys) --------- -------- sgi_vndr/gb(indigo) --------- -------- sgi_vndr/gb(indigo_nodeadkeys) --d------ -------- sgi_vndr/se(indy) --------- -------- sgi_vndr/se(indy_nodeadkeys) --------- -------- sgi_vndr/se(indigo) --------- -------- sgi_vndr/se(indigo_nodeadkeys) --d------ -------- sgi_vndr/dk(indy) --------- -------- sgi_vndr/dk(indy_nodeadkeys) --------- -------- sgi_vndr/dk(indigo) --------- -------- sgi_vndr/dk(indigo_nodeadkeys) --d------ -------- sgi_vndr/sk(indy) --------- -------- sgi_vndr/sk(indigo) --------- -------- sgi_vndr/sk(indy_qwerty) --------- -------- sgi_vndr/sk(indigo_qwerty) --d------ -------- sgi_vndr/pt(indy) --------- -------- sgi_vndr/pt(indy_nodeadkeys) --------- -------- sgi_vndr/pt(indigo) --------- -------- sgi_vndr/pt(indigo_nodeadkeys) --d------ -------- sgi_vndr/us(indy) --------- -------- sgi_vndr/us(indy101_euro) --------- -------- sgi_vndr/us(indy_compose) --------- -------- sgi_vndr/us(indigo) --------- -------- sgi_vndr/us(indigo_compose) --------- -------- sgi_vndr/us(indigo101_compose) --d------ -------- sgi_vndr/ca(indy) --------- -------- sgi_vndr/ca(indy_nodeadkeys) --------- -------- sgi_vndr/ca(indigo) --------- -------- sgi_vndr/ca(indigo_nodeadkeys) --d------ -------- sgi_vndr/de(indy) --------- -------- sgi_vndr/de(indy_nodeadkeys) --------- -------- sgi_vndr/de(indigo) --------- -------- sgi_vndr/de(indigo_nodeadkeys) --d------ -------- sgi_vndr/it(indy) --------- -------- sgi_vndr/it(indy_nodeadkeys) --------- -------- sgi_vndr/it(indigo) --------- -------- sgi_vndr/it(indigo_nodeadkeys) --d------ -------- sgi_vndr/bg(indy) --------- -------- sgi_vndr/bg(indigo) --d------ -------- sgi_vndr/be(indy) --------- -------- sgi_vndr/be(indy_nodeadkeys) --------- -------- sgi_vndr/be(indigo) --------- -------- sgi_vndr/be(indigo_nodeadkeys) --d------ -------- sgi_vndr/ru(indy) --------- -------- sgi_vndr/ru(indy_toggle) --------- -------- sgi_vndr/ru(indy_shift_toggle) --------- -------- sgi_vndr/ru(indy_ctrl_shift_toggle) --------- -------- sgi_vndr/ru(indy_ctrl_alt_toggle) --------- -------- sgi_vndr/ru(indy_caps_toggle) --------- -------- sgi_vndr/ru(indigo) --------- -------- sgi_vndr/ru(indigo_toggle) --------- -------- sgi_vndr/ru(indigo_shift_toggle) --------- -------- sgi_vndr/ru(indigo_ctrl_shift_toggle) --------- -------- sgi_vndr/ru(indigo_ctrl_alt_toggle) --------- -------- sgi_vndr/ru(indigo_caps_toggle) --d------ -------- sgi_vndr/fi(indy) --------- -------- sgi_vndr/fi(indy_nodeadkeys) --------- -------- sgi_vndr/fi(indigo) --------- -------- sgi_vndr/fi(indigo_nodeadkeys) --------- -------- sun_vndr/fr(type4_fr) --------- -------- sun_vndr/fr(type4_fr_openlook) --d------ -------- sun_vndr/fr(type5_fr) --------- -------- sun_vndr/fr(type5_fr_openlook) --------- -------- sun_vndr/pl(type4_pl) --------- -------- sun_vndr/pl(type4_pl_openlook) --d------ -------- sun_vndr/pl(type5_pl) --------- -------- sun_vndr/pl(type5_pl_openlook) --------- -------- sun_vndr/no(type4_no) --------- -------- sun_vndr/no(type4_no_openlook) --d------ -------- sun_vndr/no(type5_no) --------- -------- sun_vndr/no(type5_no_openlook) --------- -------- sun_vndr/es(type4_es) --------- -------- sun_vndr/es(type4_es_openlook) --d------ -------- sun_vndr/es(type5_es) --------- -------- sun_vndr/es(type5_es_openlook) +-------- -------- sun_vndr/de(type4_de) +-------- -------- sun_vndr/de(type4_de_nodeadkeys) +-------- -------- sun_vndr/de(type4_de_openlook) +-d------ -------- sun_vndr/de(type5_de) +-------- -------- sun_vndr/de(type5_de_nodeadkeys) +-------- -------- sun_vndr/de(type5_de_openlook) -------- -------- sun_vndr/all(Belgian6) -------- -------- sun_vndr/all(Belgian6_usb) -------- -------- sun_vndr/all(Canada4) @@ -264,6 +140,22 @@ -------- -------- sun_vndr/uk(type4_uk_openlook) -d------ -------- sun_vndr/uk(type5_uk) -------- -------- sun_vndr/uk(type5_uk_openlook) +-------- -------- sun_vndr/fi(type4_fi) +-------- -------- sun_vndr/fi(type4_fi_openlook) +-d------ -------- sun_vndr/fi(type5_fi) +-------- -------- sun_vndr/fi(type5_fi_openlook) +-------- -------- sun_vndr/no(type4_no) +-------- -------- sun_vndr/no(type4_no_openlook) +-d------ -------- sun_vndr/no(type5_no) +-------- -------- sun_vndr/no(type5_no_openlook) +-------- -------- sun_vndr/pl(type4_pl) +-------- -------- sun_vndr/pl(type4_pl_openlook) +-d------ -------- sun_vndr/pl(type5_pl) +-------- -------- sun_vndr/pl(type5_pl_openlook) +-------- -------- sun_vndr/fr(type4_fr) +-------- -------- sun_vndr/fr(type4_fr_openlook) +-d------ -------- sun_vndr/fr(type5_fr) +-------- -------- sun_vndr/fr(type5_fr_openlook) -d------ -------- sun_vndr/se(type5c_se_fixdollar) -------- -------- sun_vndr/se(type5c_se) -------- -------- sun_vndr/se(type5_se) @@ -276,21 +168,147 @@ -------- -------- sun_vndr/us(type5_us_openlook) -------- -------- sun_vndr/us(type5_unix) -------- -------- sun_vndr/us(type5_unix_openlook) --------- -------- sun_vndr/de(type4_de) --------- -------- sun_vndr/de(type4_de_nodeadkeys) --------- -------- sun_vndr/de(type4_de_openlook) --d------ -------- sun_vndr/de(type5_de) --------- -------- sun_vndr/de(type5_de_nodeadkeys) --------- -------- sun_vndr/de(type5_de_openlook) +-------- -------- sun_vndr/es(type4_es) +-------- -------- sun_vndr/es(type4_es_openlook) +-d------ -------- sun_vndr/es(type5_es) +-------- -------- sun_vndr/es(type5_es_openlook) -------- -------- sun_vndr/ru(type4_ru) -------- -------- sun_vndr/ru(type4_ru_openlook) -d------ -------- sun_vndr/ru(type5_ru) -------- -------- sun_vndr/ru(type5_ru_openlook) --------- -------- sun_vndr/fi(type4_fi) --------- -------- sun_vndr/fi(type4_fi_openlook) --d------ -------- sun_vndr/fi(type5_fi) --------- -------- sun_vndr/fi(type5_fi_openlook) -------- -------- sony(news5000-nwp5461) +-d------ -------- xfree98(jp) +-d------ -------- amiga(usa1) +-------- -------- amiga(de) +-d------ -------- sgi_vndr/de(indy) +-------- -------- sgi_vndr/de(indy_nodeadkeys) +-------- -------- sgi_vndr/de(indigo) +-------- -------- sgi_vndr/de(indigo_nodeadkeys) +-d------ -------- sgi_vndr/fi(indy) +-------- -------- sgi_vndr/fi(indy_nodeadkeys) +-------- -------- sgi_vndr/fi(indigo) +-------- -------- sgi_vndr/fi(indigo_nodeadkeys) +-d------ -------- sgi_vndr/be(indy) +-------- -------- sgi_vndr/be(indy_nodeadkeys) +-------- -------- sgi_vndr/be(indigo) +-------- -------- sgi_vndr/be(indigo_nodeadkeys) +-d------ -------- sgi_vndr/dk(indy) +-------- -------- sgi_vndr/dk(indy_nodeadkeys) +-------- -------- sgi_vndr/dk(indigo) +-------- -------- sgi_vndr/dk(indigo_nodeadkeys) +-d------ -------- sgi_vndr/hu(indy) +-------- -------- sgi_vndr/hu(indy_toggle) +-------- -------- sgi_vndr/hu(indy_shift_toggle) +-------- -------- sgi_vndr/hu(indy_ctrl_shift_toggle) +-------- -------- sgi_vndr/hu(indy_ctrl_alt_toggle) +-------- -------- sgi_vndr/hu(indy_caps_toggle) +-------- -------- sgi_vndr/hu(indigo) +-------- -------- sgi_vndr/hu(indigo_toggle) +-------- -------- sgi_vndr/hu(indigo_shift_toggle) +-------- -------- sgi_vndr/hu(indigo_ctrl_shift_toggle) +-------- -------- sgi_vndr/hu(indigo_ctrl_alt_toggle) +-------- -------- sgi_vndr/hu(indigo_caps_toggle) +-d------ -------- sgi_vndr/cz(indy) +-------- -------- sgi_vndr/cz(indigo) +-------- -------- sgi_vndr/cz(indy_qwerty) +-------- -------- sgi_vndr/cz(indigo_qwerty) +-d------ -------- sgi_vndr/bg(indy) +-------- -------- sgi_vndr/bg(indigo) +-d------ -------- sgi_vndr/sk(indy) +-------- -------- sgi_vndr/sk(indigo) +-------- -------- sgi_vndr/sk(indy_qwerty) +-------- -------- sgi_vndr/sk(indigo_qwerty) +-d------ -------- sgi_vndr/en_US(indy) +-------- -------- sgi_vndr/en_US(indy_nodeadkeys) +-------- -------- sgi_vndr/en_US(indy101) +-------- -------- sgi_vndr/en_US(indy101_nodeadkeys) +-------- -------- sgi_vndr/en_US(indy104) +-------- -------- sgi_vndr/en_US(indy104_nodeadkeys) +-------- -------- sgi_vndr/en_US(indigo) +-------- -------- sgi_vndr/en_US(indigo_nodeadkeys) +-d------ -------- sgi_vndr/jp(indy) +-d------ -------- sgi_vndr/no(indy) +-------- -------- sgi_vndr/no(indy_nodeadkeys) +-------- -------- sgi_vndr/no(indigo) +-------- -------- sgi_vndr/no(indigo_nodeadkeys) +-d------ -------- sgi_vndr/pl(indy) +-------- -------- sgi_vndr/pl(indy_nodeadkeys) +-------- -------- sgi_vndr/pl(indigo) +-------- -------- sgi_vndr/pl(indigo_nodeadkeys) +-d------ -------- sgi_vndr/gb(indy) +-------- -------- sgi_vndr/gb(indy_nodeadkeys) +-------- -------- sgi_vndr/gb(indigo) +-------- -------- sgi_vndr/gb(indigo_nodeadkeys) +-d------ -------- sgi_vndr/ch(de_indy) +-------- -------- sgi_vndr/ch(de_indy_nodeadkeys) +-------- -------- sgi_vndr/ch(de_indigo) +-------- -------- sgi_vndr/ch(de_indigo_nodeadkeys) +-------- -------- sgi_vndr/ch(fr_indy) +-------- -------- sgi_vndr/ch(fr_indy_nodeadkeys) +-------- -------- sgi_vndr/ch(fr_indigo) +-------- -------- sgi_vndr/ch(fr_indigo_nodeadkeys) +-d------ -------- sgi_vndr/pt(indy) +-------- -------- sgi_vndr/pt(indy_nodeadkeys) +-------- -------- sgi_vndr/pt(indigo) +-------- -------- sgi_vndr/pt(indigo_nodeadkeys) +-d------ -------- sgi_vndr/ca(indy) +-------- -------- sgi_vndr/ca(indy_nodeadkeys) +-------- -------- sgi_vndr/ca(indigo) +-------- -------- sgi_vndr/ca(indigo_nodeadkeys) +-d------ -------- sgi_vndr/fr(indy) +-------- -------- sgi_vndr/fr(indy_nodeadkeys) +-------- -------- sgi_vndr/fr(indigo) +-------- -------- sgi_vndr/fr(indigo_nodeadkeys) +-d------ -------- sgi_vndr/se(indy) +-------- -------- sgi_vndr/se(indy_nodeadkeys) +-------- -------- sgi_vndr/se(indigo) +-------- -------- sgi_vndr/se(indigo_nodeadkeys) +-d------ -------- sgi_vndr/us(indy) +-------- -------- sgi_vndr/us(indy101_euro) +-------- -------- sgi_vndr/us(indy_compose) +-------- -------- sgi_vndr/us(indigo) +-------- -------- sgi_vndr/us(indigo_compose) +-------- -------- sgi_vndr/us(indigo101_compose) +-d------ -------- sgi_vndr/dvorak(indy) +-------- -------- sgi_vndr/dvorak(indigo) +-d------ -------- sgi_vndr/es(indy) +-------- -------- sgi_vndr/es(indy_nodeadkeys) +-------- -------- sgi_vndr/es(indigo) +-------- -------- sgi_vndr/es(indigo_nodeadkeys) +-d------ -------- sgi_vndr/it(indy) +-------- -------- sgi_vndr/it(indy_nodeadkeys) +-------- -------- sgi_vndr/it(indigo) +-------- -------- sgi_vndr/it(indigo_nodeadkeys) +-d------ -------- sgi_vndr/th(indy) +-------- -------- sgi_vndr/th(indigo) +-d------ -------- sgi_vndr/ru(indy) +-------- -------- sgi_vndr/ru(indy_toggle) +-------- -------- sgi_vndr/ru(indy_shift_toggle) +-------- -------- sgi_vndr/ru(indy_ctrl_shift_toggle) +-------- -------- sgi_vndr/ru(indy_ctrl_alt_toggle) +-------- -------- sgi_vndr/ru(indy_caps_toggle) +-------- -------- sgi_vndr/ru(indigo) +-------- -------- sgi_vndr/ru(indigo_toggle) +-------- -------- sgi_vndr/ru(indigo_shift_toggle) +-------- -------- sgi_vndr/ru(indigo_ctrl_shift_toggle) +-------- -------- sgi_vndr/ru(indigo_ctrl_alt_toggle) +-------- -------- sgi_vndr/ru(indigo_caps_toggle) +-------- -------- digital_vndr/us(lk201) +-------- -------- digital_vndr/us(lk401) +-------- -------- digital_vndr/us(lk411) +-------- -------- digital_vndr/us(lk421) +-------- -------- digital_vndr/us(lk441) +-------- -------- digital_vndr/us(lk443) +-------- -------- digital_vndr/us(lk44x) +-------- -------- digital_vndr/us(lk450) +-------- -------- digital_vndr/us(pcxalaa) +-------- -------- digital_vndr/us(pcxalfa) +-------- -------- digital_vndr/us(pcxalga) +-------- -------- digital_vndr/us(pcxalka) +-------- -------- digital_vndr/us(pcxal) +-------- -------- digital_vndr/us(mnk) +-d------ -------- ataritt(us) +-------- -------- ataritt(de) -d------ -------- xfree86(us) -------- -------- xfree86(ar) -------- -------- xfree86(be) @@ -342,21 +360,3 @@ -------- -------- xfree86(fr_CH) -------- -------- xfree86(mt_us) -------- -------- xfree86(sk_qwerty) --d------ -------- ataritt(us) --------- -------- ataritt(de) --------- -------- digital_vndr/us(lk201) --------- -------- digital_vndr/us(lk401) --------- -------- digital_vndr/us(lk411) --------- -------- digital_vndr/us(lk421) --------- -------- digital_vndr/us(lk441) --------- -------- digital_vndr/us(lk443) --------- -------- digital_vndr/us(lk44x) --------- -------- digital_vndr/us(lk450) --------- -------- digital_vndr/us(pcxalaa) --------- -------- digital_vndr/us(pcxalfa) --------- -------- digital_vndr/us(pcxalga) --------- -------- digital_vndr/us(pcxalka) --------- -------- digital_vndr/us(pcxal) --------- -------- digital_vndr/us(mnk) --d------ -------- amiga(usa1) --------- -------- amiga(de) diff --git a/xorg-server/xkbdata.src/po/bg.po b/xorg-server/xkbdata.src/po/bg.po index 4263f655f..351b69f66 100644 --- a/xorg-server/xkbdata.src/po/bg.po +++ b/xorg-server/xkbdata.src/po/bg.po @@ -5,10 +5,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-14 06:15+0300\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-19 11:42+0300\n" "Last-Translator: Alexander Shopov <ash@contact.bg>\n" "Language-Team: Bulgarian <dict@fsa-bg.org>\n" "MIME-Version: 1.0\n" @@ -369,2378 +369,2422 @@ msgid "Bangladesh" msgstr "бангладешÑка" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "башкирÑка" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Бел" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "беларуÑка" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "белгийÑка" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "бенгалÑка" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "бенгалÑка — пробхат" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ергономична, по Дворак" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ергономична, по Дворак, Ñамо латиница-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Бъл" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Бут" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "бутанÑка" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "библейÑки иврит (Тиро)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "БиХ" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Бел" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "боÑненÑка" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Двата Alt-а заедно" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Двата Ctrl-а заедно" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Двата Shift-а заедно" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Бра" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "брайл" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "бразилÑка" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "бретонÑка" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Брй" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "българÑка" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP (урду)" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "камбоджанÑка" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Кан" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "канадÑка" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (към първата подредба), Shift+CapsLock (към поÑледната)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (докато е натиÑнат), Alt+CapsLock замеÑтва CapsLock" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "CapsLock работи като Shift ÑÑŠÑ Ð·Ð°ÐºÐ»ÑŽÑ‡Ð²Ð°Ð½Ðµ. Shift временно Ð¾Ñ‚Ð¼ÐµÐ½Ñ CapsLock" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock работи като Shift ÑÑŠÑ Ð·Ð°ÐºÐ»ÑŽÑ‡Ð²Ð°Ð½Ðµ. Shift не влиÑе на CapsLock" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock е изключен" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Поведение на CapsLock" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock ÑÐ¼ÐµÐ½Ñ ÑÑŠÑтоÑнието Shift за вÑички клавиши" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock ÑÐ¼ÐµÐ½Ñ ÑÑŠÑтоÑнието Shift Ñамо на буквените клавиши" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock използва вътрешна промÑна на региÑтъра. Shift временно Ð¾Ñ‚Ð¼ÐµÐ½Ñ CapsLock" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock използва вътрешна промÑна на региÑтъра. Shift не влиÑе на CapsLock" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "каталунÑки вариант Ñ Ä¿ (Ñ Ñ‚Ð¾Ñ‡ÐºÐ° в Ñредата)" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Ñедий" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Чех" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "черокÑка" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (алтернативен вариант)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Кит" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "чувашка" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "чувашка, латиница" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "клаÑичеÑка" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "клаÑичеÑка, Дворак" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "коулмак" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard (за леÑен доÑтъп)" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (за Интернет, 13 допълнителни клавиша)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (за Интернет, 18 допълнителни клавиша)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (за Интернет, 7 допълнителни клавиша)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Положение на Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "конгоанÑка (ДРК)" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control+Alt+Backspace" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "И двата Alt-а Ñа Control, Win е Alt" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "И двата Win-а Ñа Control (както и клавишите Ctrl)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000 (безжична)" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "татарÑка (Крим) (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "татарÑка (Крим) (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "татарÑка (Крим) (турÑко Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "татарÑка (Крим) (турÑко F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "татарÑка (Крим) (турÑко Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "хърватÑка" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Положение на Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "кирилÑка" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "кирилÑка Ñ Ñ„Ñ€ÐµÐ½Ñки кавички" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "кирилÑка Ñ Ñ€Ð°Ð·Ð¼ÐµÐ½ÐµÐ½Ð¸ „З“ и „Ж“" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Чеч" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "чеченÑка" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "Кнг" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Дат" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "„мъртво“ ударение" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "„мъртво“ тежко ударение" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Стандартни клавиши на цифровата клавиатура" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Клавиатура на Dell ÑÑŠÑ 101 клавиша за PC" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Laptop/notebook Inspiron 6xxx/8xxx (за мобилен компютър)" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Laptop/notebook Precision M series (за мобилен компютър)" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "За преноÑим компютър Dell Latitude" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keybard (за мултимедиÑ)" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "датÑка" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Ðем" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard (безжична)" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801/9802 series" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Дворак" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Дворак, (Ð¿ÑƒÐ½ÐºÑ‚ÑƒÐ°Ñ†Ð¸Ñ Ð½Ð° Обединеното кралÑтво)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Дворак, международна" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Дворак, полÑки кавички на клавиша „1“" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Дворак, полÑки кавички на клавиша за кавички" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "източна" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Допълнителни типографÑки знаци" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "английÑка" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Enter на цифровата клавиатура" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "ЕÑп" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "ергономична" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "ИÑп" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "еÑперантÑка" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "ЕÑÑ‚" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "еÑтонÑка" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Ети" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "етиопÑка" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Клавиатура управлÑвана от Evdev" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "еве" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "разширена" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "разширена — Winkeys" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "удължен Backslash" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "вариант Ñ Ð±ÑƒÐºÐ²Ð° F (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Фар" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "фарьорÑка" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Фин" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "финландÑка" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Клавиш на четири нива Ñ Ð°Ð±Ñтрактни разделители" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Клавиш на четири нива Ñ Ð´ÐµÑетична запетаÑ" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Клавиш на четири нива Ñ Ð´ÐµÑетична точка" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Клавиш на четири нива Ñ Ð´ÐµÑетична точка, Ñамо латиница-9" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Клавиш на четири нива Ñ Ð°Ñ€Ð°Ð±Ñка деÑетична запетаÑ" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Фре" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "френÑка" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "френÑка" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "френÑка (за Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "френÑка (оÑтарÑла)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "френÑка Дворак" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "френÑка, Ñ â€žÐ¼ÑŠÑ€Ñ‚Ð²Ð¸Ñ‚Ðµâ€œ клавиши на Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "френÑка, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO laptop (за мобилен компютър)" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "фула" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "ВБр" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "га" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Стандартна клавиатура за PC ÑÑŠÑ 101 клавиша" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Стандартна клавиатура за PC ÑÑŠÑ 102 клавиша (международна)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Стандартна клавиатура за PC ÑÑŠÑ 104 клавиша" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Стандартна клавиатура за PC ÑÑŠÑ 105 клавиша (международна)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M/Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Гру" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "грузинÑка" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "грузинÑка" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "грузинÑка, цкапо azerty" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "немÑка (за Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "немÑка, Ñ â€žÐ¼ÑŠÑ€Ñ‚Ð²Ð¸â€œ клавиши на Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "немÑка, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "немÑка" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Ган" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "ганийÑка" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Гръ" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "гръцка" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "ÑменÑне на ÑÑŠÑтоÑнието при натиÑкането на умножение/деление" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "гвй" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "гвинейÑка" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "гуджарати" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "гурмуки" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "гурмуки джелум" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard (за веÑело хакерÑтване)" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard for Mac (за веÑело хакерÑтване)" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "хауÑка" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard (за мултимедиÑ)" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "шеÑтнадеÑетична" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "фонетична Болнагри за хинди" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "хинди Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "фонетична" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Хър" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Унг" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "унгарÑка" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "И двата Win-а Ñа Hyper" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl (международна)" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO (алтернативна)" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "иÑландÑка" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "игбо" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "включване на „мъртва“ тилда" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Инд" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "индийÑка" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "международна, Ñ â€žÐ¼ÑŠÑ€Ñ‚Ð²Ð¸â€œ клавиши чрез AltGr" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "международна, Ñ â€žÐ¼ÑŠÑ€Ñ‚Ð²Ð¸â€œ клавиши" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "еÑкимоÑка" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "иранÑка" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "иракÑка" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "ирландÑка" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Ирл" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Ирн" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Ирк" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "ИÑл" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Изр" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "израелÑка" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ита" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "италианÑка" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "ÑпонÑка" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "ÑпонÑка, Ñерии PC-98xx" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "ÐаÑтройки за ÑпонÑка клавиатура" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Япо" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "калмишка" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "ÑпонÑка Ñричкова (кана)" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Клавишът Lock на кана заключва" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "канареÑка" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "кашубÑка" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Каз" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "казахÑка Ñ Ñ€ÑƒÑки букви" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "казахÑка" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Клавишна ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ Ð·Ð° убиването на X Ñървъра" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Клавиш за избор третото ниво" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Клавиш(и) за ÑмÑна на подредбата" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "цифрова клавиатура" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Крг" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Кам" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "комÑка" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Кор" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "корейÑка (Република КореÑ)" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "ктунакÑа" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "кюрдÑка, (Ф)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "кюрдÑка, арабÑки и латинÑки букви" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "кюрдÑка, латинÑко Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "кюрдÑка, латинÑко Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "киргиÑтанÑка" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "ЛÐм" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Лао" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "лаоÑка" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop/notebook Compaq Laptop Keyboard (за мобилен компютър, напр. Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Laptop/notebook Compaq Internet Keyboard (за мобилен компютър, напр. Presario, и Интернет)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Laptop/notebook eMachines m68xx (за мобилен компютър)" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "латинÑка" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "латиноамериканÑка" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "латинÑка за Уникод" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "латинÑка за Уникод (qwerty)" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "латинÑка (qwerty)" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "латинÑка за Уникод" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "латинÑка за Уникод, qwerty" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "латинÑка Ñ Ñ„Ñ€ÐµÐ½Ñки кавички" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "латвийÑка" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Лат" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "ЛевиÑÑ‚ Alt" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "ЛевиÑÑ‚ Alt (докато е натиÑнат)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "ЛевиÑÑ‚ Alt е разменен Ñ Ð»ÐµÐ²Ð¸Ñ Win" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "ЛевиÑÑ‚ Ctrl" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "ЛевиÑÑ‚ Ctrl+левиÑÑ‚ Shift" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "ЛевиÑÑ‚ Shift" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "ЛевиÑÑ‚ Win" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "CapsLock (към първата подредба), деÑниÑÑ‚ Win/Menu (към поÑледната)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "ЛевиÑÑ‚ Win (докато е натиÑнат)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "за левичари" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Дворак за левичари" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "оÑтарÑла" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "ОÑтарÑла Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "ОÑтарÑл клавиш Ñ Ð´ÐµÑетична запетаÑ" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "ОÑтарÑл клавиш Ñ Ð´ÐµÑетична точка" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "По-малко/по-голÑмо" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "литовÑка" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop (безжична)" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (алтернативен вариант)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300 (безжична)" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator (безжична)" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical (оптична)" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (алтернативен вариант 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch (безжична)" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator (безжична)" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15, допълнителни клавиши чрез G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard (Ñтандартна)" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard (безжична, за мултимедиÑ)" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (model Y-RB6) (безжична)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE (за Интернет)" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB) (за Интернет)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "долно ÑорбÑка" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "долно ÑорбÑка (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Лит" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "Чгр" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (международна)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "македонÑка" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh Old (Ñтар вариант)" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Ñ â€žÐ¼ÑŠÑ€Ñ‚Ð²Ð¸â€œ клавиши на Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "CapsLock е допълнителен Backspace" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "CapsLock е допълнителен Ctrl" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "CapsLock е допълнителен Esc" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "CapsLock е допълнителен Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "CapsLock е допълнителен NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "CapsLock е допълнителен Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Млд" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "малаÑламÑка" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "малаÑламÑка лалита" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "малдивÑка" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "малтийÑка" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "малтийÑка Ñ Ð°Ð¼ÐµÑ€Ð¸ÐºÐ°Ð½Ñка подредба" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Мао" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "маорÑка" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard (за леÑен доÑтъп)" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "ЛевиÑÑ‚ Win е Meta" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "И двата Win-а Ñа Meta" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Swedish (за Интернет, шведÑка)" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro/Microsoft Internet Keyboard Pro (за Интернет)" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB/Microsoft Internet Keyboard Pro (за Интернет)" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000 (безжична, ергономична)" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard (за офиÑа)" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A (безжична, за мултимедиÑ)" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Разни наÑтройки за ÑъвмеÑтимоÑÑ‚" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Мак" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Мал" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Миа" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Мон" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "монголÑка" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "черногорÑка" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "мароканÑка" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "многоезична" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "многоезична, първа чаÑÑ‚" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "многоезична, втора чаÑÑ‚" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "мианмарÑка" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Backspace на мÑÑтото определено от подредбата NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "нативна" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "нативна за еÑперанто" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "нативна за СÐЩ" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Ðеп" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "непалÑка" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "холандÑка" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "фонетична, нова" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Ðиг" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "нигерийÑка" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Хол" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Интервал без разделÑне на четвърто ниво" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Интервал без разделÑне на четвърто ниво и теÑен интервал без разделÑне на шеÑто ниво" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Интервал без разделÑне на четвърто ниво и теÑен интервал без разделÑне на шеÑто ниво (Ñ Ctrl+Shift)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Интервал без разделÑне на второ ниво" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Интервал без разделÑне на трето ниво" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Интервал без разделÑне на трето ниво и нищо на четвърто ниво" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Интервал без разделÑне на трето ниво и теÑен интервал без разделÑне на четвърто ниво" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Ðор" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "ÑеверноÑамÑка (ÐорвегиÑ)" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "ÑеверноÑамÑка, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "норвежка" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Поведение на клавиша за триене на цифровата клавиатура" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Цифровата клавиатура функционира като в Macintosh" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Избор на подредбата на цифровата клавиатура" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "дарийÑка за OLPC (фарÑи)" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "пащунÑка за OLPC" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "южно узбекÑка за OLPC" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "прованÑалÑка" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "огамÑка" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "огамÑка IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "орийÑка" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard (за Интернет)" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "оÑетинÑка" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "оÑетинÑка, клавиши Win" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "оÑетинÑка, оÑтарÑла" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "Серии PC-98xx" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Пак" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "пакиÑтанÑка" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "пащунÑка" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "патачотÑка" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "перÑийÑка, Ñ Ð¿ÐµÑ€ÑийÑка цифрова клавиатура" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "фонетична" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "фонетична, клавиши Win" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Пол" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "полÑка" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "политонална" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "португалÑка" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "про" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "цифрова клавиатура про" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "пробхатÑка" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Дворак за програмиÑти" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Пор" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "ДеÑниÑÑ‚ Alt" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "ДеÑниÑÑ‚ Alt (докато е натиÑнат)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "ДеÑниÑÑ‚ Alt никога не избира третото ниво" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "ДеÑниÑÑ‚ Alt, Shift+деÑниÑÑ‚ Alt Ñа Multi" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "ДеÑниÑÑ‚ Ctrl" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "ДеÑниÑÑ‚ Ctrl (докато е натиÑнат)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "ДеÑниÑÑ‚ Ctrl е деÑен Alt" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "ДеÑниÑÑ‚ Shift" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "ДеÑниÑÑ‚ Win" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "ДеÑниÑÑ‚ Win (докато е натиÑнат)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "за деÑничари" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Дворак за деÑничари" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "румънÑка" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "румънÑка клавиатура Ñ Ð½ÐµÐ¼Ñки букви" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "румънÑка клавиатура Ñ Ð½ÐµÐ¼Ñки букви, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Рум" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "РуÑ" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "руÑка" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "руÑка" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "руÑка фонетична" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "руÑка фонетична, Дворак" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "руÑка фонетична, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "руÑка Ñ ÐºÐ°Ð·Ð°Ñ…Ñки букви" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard (безжична, за мултимедиÑ)" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "Срб" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500 (ергономична)" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "шъкуъпмъктчин" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Точка и Ð·Ð°Ð¿ÐµÑ‚Ð°Ñ Ð½Ð° третото ниво" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "ÑръбÑка" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift Ð¾Ñ‚Ð¼ÐµÐ½Ñ CapsLock" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift не Ð¾Ñ‚Ð¼ÐµÐ½Ñ CapsLock, а избира третото ниво" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shift за цифровата клавиатура както в MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Обикновена" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Ñловашка" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "ÑловенÑка" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "южноафриканÑка" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "южно узбекÑка" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "иÑпанÑка" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Специалните комбинации (Ctrl+Alt+<клавиш>) Ñе обработват от Ñървъра" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "Шри" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "шриланкÑка" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Ñтандартна" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Ñтандартна (Ñедий)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Ñтандартна фонетична" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Ñтандартна украинÑка" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Ñтандартна украинÑка, руÑка подредба" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Ðа Sun, вид 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun, без „мъртви“ клавиши" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard (за мултимедиÑ)" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Свдворак" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Свш" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Свн" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "РазмÑна на Ctrl и CapsLock" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "РазмÑна на Esc и CapsLock" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Шве" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "шведÑка" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "швейцарÑка" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (за таблет)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Сир" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "ÑирийÑка" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "ÑириакÑка (арамейÑка)" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "ÑириакÑка фонетична (арамейÑка)" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "таджикÑка" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "тамилÑка" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "тамилÑка машинопиÑна Ñ Ñ‚Ð°Ð±ÑƒÐ»Ð°Ñ†Ð¸Ñ" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "тамилÑка машинопиÑна — TSCII" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "тамилÑка за Уникод" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "татарÑка" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "телугу" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Тай" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "тайландÑка" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "тибетÑка" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "тибетÑка (Ñ Ñ†Ð¸Ñ„Ñ€Ð¸ от ASCII)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "тифинах" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "алтернативна за тифинах" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "алтернативна, фонетична за тифинах" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "разширена за тифинах" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "разширена фонетична за тифинах" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "фонетична за тифинах" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "вариант Ñ Ñ‚Ð¸Ð»Ð´Ð° (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Тдж" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "към ÑÑŠÐ¾Ñ‚Ð²ÐµÑ‚Ð½Ð¸Ñ ÐºÐ»Ð°Ð²Ð¸Ñˆ в Dvorak" -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "към ÑÑŠÐ¾Ñ‚Ð²ÐµÑ‚Ð½Ð¸Ñ ÐºÐ»Ð°Ð²Ð¸Ñˆ Qwerty" -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "фонетична, традиционна" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic (безжична)" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Тур" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "турÑка" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "туркмениÑтанÑка" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "машинопиÑна" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Подредба UCW (Ñамо ударени букви)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "американÑка Ñ Ð±Ð¾ÑненÑки диграфи" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "американÑка Ñ Ð±Ð¾ÑненÑки букви" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "американÑка Ñ Ñ…ÑŠÑ€Ð²Ð°Ñ‚Ñки диграфи" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "американÑка Ñ Ñ…ÑŠÑ€Ð²Ð°Ñ‚Ñки букви" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "американÑка Ñ ÐµÑтонÑки букви" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "американÑка Ñ Ð¸Ñ‚Ð°Ð»Ð¸Ð°Ð½Ñки букви" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "американÑка Ñ Ð»Ð¸Ñ‚Ð¾Ð²Ñки букви" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "американÑка ÑÑŠÑ ÑловенÑки букви" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "Ðме" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "удмурт" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Укр" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "украинÑка" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "ДопълнениÑта от Уникод (Ñтрелки и математичеÑки операции)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "ДопълнениÑта от Уникод (Ñтрелки и математичеÑки операции). Операциите Ñа на Ñтандартното ниво" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "екÑпертна за Уникод" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "британÑка" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "урду, фонетична, алтернативна" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "урду, фонетична" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "урду, клавиши Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Ñ Ð±Ð¾ÑненÑки диграфи" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Ñ Ñ…ÑŠÑ€Ð²Ð°Ñ‚Ñки диграфи" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "ÑÑŠÑ Ñ„Ñ€ÐµÐ½Ñки кавички" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Ð˜Ð½Ð´Ð¸ÐºÐ°Ñ†Ð¸Ñ Ñ‡Ñ€ÐµÐ· клавиатурен Ñветодиод за ÑмÑна на подредбата" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Генериране на интервал без разделÑне Ñ ÐºÐ»Ð°Ð²Ð¸Ñˆa за интервал" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Ðормален интервал на вÑички нива" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Узб" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "узбекиÑтанÑка" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "виетнамÑка" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Вие" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Цифрова клавиатура — Wang 724, Ñ Ð´Ð¾Ð¿ÑŠÐ»Ð½ÐµÐ½Ð¸Ñта от Уникод (Ñтрелки и математичеÑки операции)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Цифрова клавиатура Wang 724, Ñ Ð´Ð¾Ð¿ÑŠÐ»Ð½ÐµÐ½Ð¸Ñта от Уникод (Ñтрелки и математичеÑки операции). Операциите Ñа на Ñтандартното ниво" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "западна" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "клавиши Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "клавиш <\\|>" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "€ е при „5“" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "френÑки кавички" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard (за Интернет)" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "ÑкутÑка" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "йоруба" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "разменени „З“ и „Ж“" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "ЮÐÑ„" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/цифри" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "цифри" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "разменени точка и Ð·Ð°Ð¿ÐµÑ‚Ð°Ñ Ð¸ кавички (оÑтарÑла)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty Ñ ÑƒÐ´ÑŠÐ»Ð¶ÐµÐ½ Backslash" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/цифри" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" + +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "ацинÑка" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "комбиниращи ÑƒÐ´Ð°Ñ€ÐµÐ½Ð¸Ñ Ð²Ð¼ÐµÑто „мъртви“ клавиши" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Ñелиш на кор дален" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "международна, Ñ ÐºÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ð¸ по Уникод чрез AltGr" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "международна, Ñ Ð°Ð»Ñ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð¸ комбинации по Уникод чрез AltGr" diff --git a/xorg-server/xkbdata.src/po/ca.po b/xorg-server/xkbdata.src/po/ca.po index 5ae16fa2e..a293b5509 100644 --- a/xorg-server/xkbdata.src/po/ca.po +++ b/xorg-server/xkbdata.src/po/ca.po @@ -1,14 +1,14 @@ -# Translation of xkeyboard-config-1.6pre1.po to Catalan +# Translation of xkeyboard-config-1.6.99.po to Catalan # Copyright © 2007 Free Software Foundation, Inc. # This file is distributed under the same license as the xkeyboard-config package. # # Josep Ma. Ferrer <txemaq@gmail.com>, 2007, 2008, 2009. msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-13 21:19+0200\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 20:33+0200\n" "Last-Translator: Josep Ma. Ferrer <txemaq@gmail.com>\n" "Language-Team: Catalan <ca@dodds.net>\n" "MIME-Version: 1.0\n" @@ -370,2379 +370,2423 @@ msgid "Bangladesh" msgstr "Bangladesh" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Baixkir" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Bielorússia" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Bèlgica" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "BengalÃ" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengalà Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonòmic, tipus Dvorak" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonòmic, tipus Dvorak, només latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Hebreu bÃblic (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bòsnia i Hercegovina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Les dues tecles Alt juntes" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Les dues tecles Ctrl juntes" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Les dues tecles Maj juntes" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasil" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretó" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Teclat Brother Internet" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgà ria" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambodja" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Canadà " -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Bloq Majús" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "BloqMaj" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "BloqMaj (a la primera disposició), Maj+BloqMaj (a la darrera disposició)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "BloqMaj (mentre està premuda), Alt+BloqMaj efectua l'acció de BloqMaj original" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "BloqMaj actua com a Maj amb bloqueig. Maj «pausa» BloqMaj" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "BloqMaj actua com a Maj amb bloqueig. Maj no afecta a BloqMaj" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "BloqMaj està deshabilitat" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Comportament de la tecla BloqMaj" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "BloqMaj commuta Maj, de manera que afecta totes les tecles" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "BloqMaj commuta les majúscules normals dels carà cters alfabètics" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "BloqMaj usa internament les majúscules. Maj «pausa» BloqMaj" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "BloqMaj usa internament les majúscules. Maj no afecta BloqMaj" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Variant catalana amb L amb punt volat" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Trencat" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (opció alternativa)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Teclat Chicony Internet" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Xina" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chuvash" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chuvash llatÃ" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Clà ssic" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak clà ssic" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Teclat Compaq Easy Access" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Teclat Compaq Internet (13 tecles)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Teclat Compaq Internet (18 tecles)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Teclat Compaq Internet (7 tecles)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Teclat Compaq iPaq" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Posició de la tecla Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Congo, República Democrà tica del" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control + Alt + Retrocés" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Control s'assigna a les tecles Alt, Alt s'assigna a les tecles Win" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Control s'assigna a les tecles Win (i a les tecles Ctrl habituals)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Tà tar de Crimea (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Tà tar de Crimea (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Tà tar de Crimea (Turc Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Tà tar de Crimea (Turc F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Tà tar de Crimea (Turc Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Croà cia" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Posició de la tecla Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Maj" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "CirÃl·lic" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "CirÃl·lic amb cometes angulars" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "CirÃl·lic, Z i ZHE intercanviades" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Txèquia" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Accent mort" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Accent greu mort" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Tecles predeterminades del teclat numèric" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell PC 101 tecles" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Portà til Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Portà til Dell sèrie Precision M" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Portà til Dell sèrie Latitude" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Teclat Dell USB Multimedia" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Dinamarca" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Teclat Dexxa Wireless Desktop" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond sèries 9801 / 9802" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (Puntuació UK)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak internacional" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, cometes poloneses a la tecla 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, cometes poloneses a la tecla cometes" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Oriental" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Elimina les tecles mortes" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Habilita els carà cters tipogrà fics extres" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Anglès" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Retorn en el teclat numèric" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonòmic" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estònia" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiòpia" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Teclat gestionat per «evdev»" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Estés" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Estés - Tecles Win" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Barra inversa estesa" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Variant de lletra F (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Illes Faroe" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finlà ndia" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Tecla de quatre nivells amb separadors abstractes" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Tecla de quatre nivells amb coma" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Tecla de quatre nivells amb punt" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Tecla de quatre nivells amb punt, restricció de latin-9" # Què collons és momayyez? jm -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Tecla de quatre nivells amb momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "França" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Francès" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Francès (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Francès (llegat)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Francès Dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Francès, tecles mortes de Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Francès, sense tecles mortes" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO portà til" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "PC genèric de 101 tecles" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "PC genèric de 102 tecles (intl)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "PC genèric de 104 tecles" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "PC genèric de 105 tecles (intl)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Teclat Genius MM KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Geòrgia" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgià " -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgià AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Alemany (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Alemany, tecles mortes de Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Alemany, sense tecles mortes" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Alemanya" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grècia" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Commutació de grup en la tecla de multiplicació/divisió" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Teclat Happy Hacking" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Teclat Happy Hacking per a Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Haussa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Teclat Hewlett-Packard Internet" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Teclat Hewlett-Packard SK-250x Multimedia" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Hexadecimal" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofònic" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hongria" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper s'assigna a les tecles Win" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "Alternativa ISO" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islà ndia" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Inclou la titlla morta" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Ãndia" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internacional (tecles mortes AltGr)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internacional (amb tecles mortes)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Iraq" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlanda" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Ità lia" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japó" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japó (sèries PC-98xx)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Opcions del teclat japonès" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Calmuc" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "La tecla de bloqueig Kana està blocant" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Caixubi" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakh amb rus" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakhstan" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Seqüència de tecles per a matar el servidor X" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Tecla per a seleccionar el 3r nivell" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Tecla(es) per a canviar la disposició" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Teclat numèric" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Corea, República de" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Kutenai (Ktunaxa)" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurd, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurd, arà bic-llatÃ" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurd, llatà Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurd, llatà Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirguizistan" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Laosià " -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Teclat de portà til Compaq (p.ex. Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Teclat Internet de portà til Compaq (p.ex. Presario)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Portà til eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "LlatÃ" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Llatinoamericà " -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Llatà Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Llatà Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Llatà qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Llatà unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Llatà unicode qwerty" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Llatà amb cometes angulars" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Letònia" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Alt esquerra" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Alt esquerra (mentre està premuda)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Alt esquerra està intercanviada amb la tecla Win esquerra" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Ctrl esquerra" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Ctrl esquerra + Maj esquerra" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Maj esquerra" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Win esquerra" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Win esquerraj (a la primera disposició), Win/Menú dreta (a la darrera disposició)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Win esquerra (mentre està premuda)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Esquerrà " -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorak esquerrà " -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Llegat" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Wang 724 llegat" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Tecla llegada amb coma" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Tecla llegada amb punt" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Més petit-que/Més gran-que" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Lituà nia" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Teclat Logitech Access" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (opció alternativa)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (opció alternativa 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 amb tecles extres via G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Teclat Logitech genèric" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Teclat Logitech Internet 350" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Teclat Logitech Internet" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Teclat Logitech Internet Navigator" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Teclat Logitech Media Elite" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Teclat Logitech Ultra-X Cordless Media Desktop" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Teclat Logitech Ultra-X" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Teclat Logitech diNovo Edge" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Teclat Logitech diNovo" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Teclat Logitech iTouch Cordless (model Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Teclat Logitech iTouch Internet Navigator SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Teclat Logitech iTouch Internet Navigator SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Baix sòrab" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Baix sòrab (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Macedònia" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh antic" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, tecles mortes de Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, sense tecles mortes" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Converteix BloqMaj en un Retrocés addicional" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Converteix BloqMaj en un Ctrl addicional" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Converteix BloqMaj en un Esc addicional" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Converteix BloqMaj en un Hyper addicional" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Converteix BloqMaj en un BloqNúm addicional" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Converteix BloqMaj en un Super addicional" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malaialam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malaialam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldives" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Teclat maltès amb disposició US" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Teclat Memorex MX2500 EZ-Access" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menú" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta s'assigna a la tecla Win esquerra" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta s'assigna a les tecles Win" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Teclat Microsoft Internet" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Suec" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Teclat Microsoft Natural Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Teclat Microsoft Natural Pro / Teclat Microsoft Internet Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Teclat Microsoft Natural Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Teclat Microsoft Natural Pro USB / Teclat Microsoft Internet Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Teclat Microsoft Office" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Teclat Microsoft Wireless Multimedia 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Opcions de compatibilitat diverses" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongòlia" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marroc" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Multilingüe" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Multilingüe, primera part" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Multilingüe, segona part" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Retrocés estil NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo per a l'Esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo per als teclats EUA" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Països Baixos" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Fonètic nou" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigèria" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Carà cter d'espai sense salt al nivell quart" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Carà cter d'espai sense salt al nivell quart, i un carà cter d'espai fi sense salt al nivell sisè" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Carà cter d'espai sense salt al nivell quart, un carà cter d'espai fi sense salt al nivell sisè (via Ctrl+Maj)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "La tecla d'espai produeix un carà cter d'espai sense salt al nivell segon" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "La tecla d'espai produeix un carà cter d'espai sense salt al nivell tercer" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "La tecla d'espai produeix un carà cter d'espai sense salt al nivell tercer, i res al nivell quart" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "La tecla d'espai produeix un carà cter d'espai sense salt al nivell tercer, i un carà cter d'espai fi sense salt al nivell quart" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Saami del nord" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Saami del nord, sense tecles mortes" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Noruega" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "BloqNúm" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Comportament de la tecla de supressió del teclat numèric" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Les tecles del teclat numèric funcionen com al Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Selecció de la disposició del teclat numèric" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Paixtu" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Uzbek del sud" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Occità " -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Teclat Ortek MCK-800 MM/Internet" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Osset" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Osset, tecles Win" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Osset, llegat" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "Sèries PC-98xx" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Paixtu" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Farsi, amb teclat farsi" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonètic" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Tecles Win fonètiques" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polònia" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Politònic" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorak de programador" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Alt dreta" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Alt dreta (mentre està premuda)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "La tecla Alt dreta mai selecciona el 3r nivell" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Alt dreta, Maj+Alt dreta és la Multi_Key" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Ctrl dreta" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Ctrl dreta (mentre està premuda)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Ctrl dreta com a Alt dreta" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Maj dreta" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Win dreta" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Win dreta (mentre està premuda)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Dretà " -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorak dretà " -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Romania" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Teclat romanès amb lletres alemanyes" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Teclat romanès amb lletres alemanyes, sense tecles mortes" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rússia" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Rus" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Rus fonètic" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Rus fonètic Dvorak" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Rus fonètic, sense tecles mortes" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Rus amb Kazakh" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "Teclat SILVERCREST Multimedia Wireless" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Bloq Despl" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "BloqDespl" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Punt i coma al tercer nivell" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Sèrbia" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Maj cancel·la BloqMaj" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Maj no cancel·la BloqNúm, en el seu lloc selecciona el 3r nivell" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Maj amb el teclat numèric funciona com al MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Maj+BloqMaj" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Senzill" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Eslovà quia" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Eslovènia" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Sudà frica" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Uzbek del sud" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Espanya" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Tecles especials (Ctrl+Alt+<tecla>) gestionades en un servidor" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Està ndard" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Està ndard (ce trencada)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Fonètic està ndard" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Està ndard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Està ndard RSTU en una disposició russa" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Tecles mortes de Sun" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Teclat Super Power Multimedia" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Intercanvia Ctrl i BloqMaj" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Intercanvia Esc i BloqMaj" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Suècia" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Suïssa" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "SÃria" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Siri" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Siri fonètic" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadjikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tà mil" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tà mil TAB Typewriter" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tà mil TSCII Typewriter" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tà mil Unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tà tar" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Tailà ndia" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetà " -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetà (amb nombres ASCII)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternativa" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh fonètic alternativa" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh ampliada" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh fonètic ampliada" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh fonètica" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Variant titlla (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "A la tecla corresponent en un teclat Dvorak." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "A la tecla corresponent en un teclat Qwerty." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Fonètic tradicional" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Teclat Trust Direct Access" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Teclat Trust Wireless Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turquia" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistan" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Mà quina d'escriure" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Disposició UCW (només lletres accentuades)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Teclat US amb dÃgrafs bosnians" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Teclat US amb lletres bosnianes" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Teclat US amb dÃgrafs croats" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Teclat US amb lletres croates" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Teclat US amb lletres estònies" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Teclat US amb lletres italianes" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Teclat US amb dÃgrafs lituans" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Teclat US amb lletres eslovenes" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "EUA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ucraïna" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Addicions Unicode (fletxes i operadors matemà tics)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Addicions Unicode (fletxes i operadors matemà tics). Els operadors matemà tics al nivell predeterminat" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Regne Unit" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdú, fonètic alternatiu" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdú, fonètic" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdú, tecles Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Usa dÃgrafs bosnians" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Usa dÃgrafs croats" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Usa cometes angulars per les cometes" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Usa el LED del teclat per a mostrar la disposició alternativa" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Usa la tecla d'espai per a introduir un carà cter d'espai sense salt" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Espai normal en qualsevol nivell" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistan" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "Teclat ViewSonic KU-306 Internet" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Teclat numèric Wang 724 amb addicions Unicode (fletxes i operadors matemà tics)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Teclat numèric Wang 724 amb addicions Unicode (fletxes i operadors matemà tics). Els operadors matemà tics en el nivell per defecte" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Occidental" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Tecles Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Amb la tecla <\\|>" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Amb el signe de l'euro al 5" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Amb cometes angulars" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Teclat Yahoo! Internet" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Iacut" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Ioruba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z i ZHE intercanviades" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/dÃgits" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "dÃgits" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "punt i coma i cometa desplaçats (obsolet)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, barra inversa ampliada" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/dÃgits" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" + +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Combinació d'accents en lloc de tecles mortes" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internacional (combinació Unicode AltGr)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internacional (combinació Unicode AltGr, alternativa)" diff --git a/xorg-server/xkbdata.src/po/cs.po b/xorg-server/xkbdata.src/po/cs.po index 573dcda46..027eaec31 100644 --- a/xorg-server/xkbdata.src/po/cs.po +++ b/xorg-server/xkbdata.src/po/cs.po @@ -3,20 +3,18 @@ # This file is distributed under the same license as the xkeyboard-config package. # Michal Bukovjan <bukm@centrum.cz>, 2003. # Petr Kovar <pknbe@volny.cz>, 2007, 2008, 2009. -# msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-15 19:52+0200\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-21 01:35+0200\n" "Last-Translator: Petr Kovar <pknbe@volny.cz>\n" "Language-Team: Czech <translation-team-cs@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" -"X-Generator: KBabel 1.11.4\n" #: ../rules/base.xml.in.h:1 msgid "(F)" @@ -371,2378 +369,2422 @@ msgid "Bangladesh" msgstr "Bangladéš" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "BaÅ¡kirské" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "BEL" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "BÄ›lorusko" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgie" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengálské" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengálské Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomické, typ Dvorak" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomické, typ Dvorak, pouze Latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "BGR" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "BHU" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhútán" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Biblická hebrejÅ¡tina (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "BIH" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "BLR" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosna a Hercegovina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "ObÄ› klávesy Alt dohromady" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "ObÄ› klávesy Ctrl dohromady" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "ObÄ› klávesy Shift dohromady" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "BRA" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braillovo pÃsmo" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "BrazÃlie" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretonské" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "BRL" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulharsko" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kambodža" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "CAN" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "Caps Lock (na prvnà rozloženÃ), Shift+Caps Lock (na poslednà rozloženÃ)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "Caps Lock (pÅ™i stisknutÃ), Alt+Caps Lock provádà původnà akci Caps Lock" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "Caps Lock funguje jako Shift s uzamÄenÃm. Shift pÅ™eruÅ¡uje Caps Lock." -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "Caps Lock funguje jako Shift s uzamÄenÃm. Shift neovlivňuje Caps Lock." -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "Klávesa Caps Lock je vypnuta" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Chovánà klávesy Caps Lock" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "Caps Lock pÅ™epne Shift, takže budou dotÄeny vÅ¡echny klávesy" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "Caps Lock pÅ™epne běžný pÅ™evod abecednÃch znaků na verzálky" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "Caps Lock použÃvá vnitÅ™nà pÅ™evod na verzálky. Shift pÅ™eruÅ¡uje Caps Lock." -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "Caps Lock použÃvá vnitÅ™nà pÅ™evod na verzálky. Shift neovlivňuje Caps Lock." -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalánská varianta s ela geminada" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cédille" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "CHE" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "ÄŒerokÃ" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternativnà volba)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "ÄŒÃna" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "ÄŒuvaÅ¡ské" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "ÄŒuvaÅ¡ské latinské" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klasické" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Klasické Dvorak" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 kláves)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 kláves)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 kláves)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "UmÃstÄ›nà klávesy Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Konžská demokratická republika" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Ctrl + Alt + Backspace" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Ctrl je pÅ™iÅ™azena ke klávesám Alt, Alt je pÅ™iÅ™azena ke klávesám Win" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Ctrl je pÅ™iÅ™azena ke klávesám Win (a obvyklým klávesám Ctrl)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Krymskotatarské (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Krymskotatarské (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Krymskotatarské (turecké Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Krymskotatarské (turecké F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Krymskotatarské (turecké Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Chorvatsko" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "UmÃstÄ›nà klávesy Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cyrilice" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cyrilice s francouzskými uvozovkami" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cyrilice, prohozené Z a Ž" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "CZE" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "ÄŒesko" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "DAN" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Mrtvá Äárka" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Mrtvá opaÄná Äárka (gravis)" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Výchozà numerická klávesnice" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell PC 101klávesové" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Notebook Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Notebook Dell Å™ady Precision M" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Notebook Å™ady Dell Latitude" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keyboard" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Dánsko" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "DEU" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Řada Diamond 9801 / 9802" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (britská interpunkce)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak mezinárodnÃ" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, polské uvozovky na klávese 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, polské uvozovky na klávese uvozovky" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "VýchodnÃ" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "VylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Povolit pÅ™Ãdavné znaky hladké sazby" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Anglické" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Enter na numerické klávesnici" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "EPO" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomické" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "ESP" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "EST" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estonsko" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "ETH" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopie" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Klávesnice spravovaná pomocà Evdev" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "RozÅ¡ÃÅ™ené" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "RozÅ¡ÃÅ™ené - klávesy Win" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "RozÅ¡ÃÅ™ená klávesa zpÄ›tného lomÃtka" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Varianta se znakem F" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "FAO" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Faerské ostrovy" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "FIN" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finsko" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Klávesa Ätvrté úrovnÄ› s abstraktnÃmi oddÄ›lovaÄi" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Klávesa Ätvrté úrovnÄ› s Äárkou" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Klávesa Ätvrté úrovnÄ› s teÄkou" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Klávesa Ätvrté úrovnÄ› s teÄkou, omezenà Latin-9" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Klávesa Ätvrté úrovnÄ› se znakem momajjez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "FRA" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Francie" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Francouzské" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Francouzské (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Francouzské (zdÄ›dÄ›né)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Francouzské Dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Francouzské, mrtvé klávesy Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Francouzské, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Notebook Fujitsu-Siemens Computers AMILO" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBR" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "GA" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Obecné PC 101klávesové" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Obecné PC 102klávesové (mez.)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Obecné PC 104klávesové" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Obecné PC 105klávesové (mez.)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "GEO" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Gruzie" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "GruzÃnské" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "GruzÃnské AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "NÄ›mecké (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "NÄ›mecké, mrtvé klávesy Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "NÄ›mecké, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "NÄ›mecko" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "GHA" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "GRE" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Řecko" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "PÅ™epÃnánà skupiny klávesou násobenÃ/dÄ›lenÃ" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "GUI" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gudžarátské" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmuchské" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmuchské (Jhelum)" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard for Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "HexadecimálnÃ" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindské bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindské Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "StejnÄ› znÄ›jÃcÃ" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "HRV" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "HUN" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "MaÄarsko" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper je pÅ™iÅ™azena ke klávesám Win" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, mez." -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO alternativnÃ" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Island" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Zahrnout mrtvou klávesu vlnovky" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "IND" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Indie" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Mezinárodnà (mrtvé klávesy AltGr)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Mezinárodnà (s mrtvými klávesami)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Ãrán" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irák" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irsko" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "IRL" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "IRN" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "IRQ" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "ISL" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "ISR" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Izrael" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "ITA" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Itálie" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japonsko" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japonsko (Å™ada PC-98xx)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Volby japonské klávesnice" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "JPN" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmycké" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Klávesa Kana Lock uzamyká" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannadské" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "KaÅ¡ubské" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "KAZ" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "KazaÅ¡ská s ruÅ¡tinou" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazachstán" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "PoÅ™adà kláves zabÃjejÃcà server X" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Klávesa umožňujÃcà výbÄ›r 3. úrovnÄ›" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Klávesa mÄ›nÃcà rozloženÃ" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Numerická klávesnice" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "KGZ" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "KHM" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "KOR" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Korejská republika" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdské, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdské, arabsko-latinské" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdské, latinské Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdské, latinské Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kyrgyzstán" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "LAO" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop Keyboard pro notebook Compaq (napÅ™. Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Internet Keyboard pro notebook Compaq (napÅ™. Presario)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Notebook eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latinské" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latinskoamerické" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latinské Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latinské Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latinské qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latinské Unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latinské Unicode qwerty" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latinské s francouzskými uvozovkami" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "LotyÅ¡sko" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "LAV" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Levá klávesa Alt" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Levá klávesa Alt (pÅ™i stisknutÃ)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Levá klávesa Alt je prohozena s levou klávesou Win" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Levá klávesa Ctrl" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Levá klávesa Ctrl + levá klávesa Shift" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Levá klávesa Shift" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Levá klávesa Win" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Levá klávesa Win (na prvnà rozloženÃ), pravá klávesa Win/Menu (na poslednà rozloženÃ)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Levá klávesa Win (pÅ™i stisknutÃ)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Levoruké" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Levoruké Dvorak" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "ZdÄ›dÄ›né" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "ZdÄ›dÄ›ná Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "ZdÄ›dÄ›ná klávesa s Äárkou" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "ZdÄ›dÄ›ná klávesa s teÄkou" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Menšà než/vÄ›tšà než" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litva" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternativnà volba)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (alternativnà volba 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "PÅ™Ãdavné klávesy Logitech G15 pomocà G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (model Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Dolnolužické" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Dolnolužické (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "LTU" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (mez.)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonie" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh staré" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, mrtvé klávesy Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Backspace" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Ctrl" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Esc" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Num Lock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "VytvoÅ™it z klávesy Caps Lock dalšà Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "MAL" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malajálamské" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malajálamské lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maledivy" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltézská klávesnice s americkým rozloženÃm" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "MAO" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maorské" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta je pÅ™iÅ™azena k levé klávese Win" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta je pÅ™iÅ™azena ke klávesám Win" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Å¡védská" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "DodateÄné volby kompatibility" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "MKD" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "MLT" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "MMR" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "MNG" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolsko" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "ÄŒerná Hora" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Maroko" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "VÃcejazyÄné" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "VÃcejazyÄné, prvnà Äást" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "VÃcejazyÄné, druhá Äást" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Barma" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Backspace typu NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo pro esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo pro americké klávesnice" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "NEP" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepál" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Nizozemsko" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Nové fonetické" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "NIG" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigérie" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "NLD" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Na Ätvrté úrovni znak nedÄ›litelné mezery" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Na Ätvrté úrovni znak nedÄ›litelné mezery, tenká nedÄ›litelná mezera na Å¡esté úrovni" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Na Ätvrté úrovni znak nedÄ›litelné mezery, tenká nedÄ›litelná mezera na Å¡esté úrovni (pÅ™es Ctrl+Shift)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Na druhé úrovni znak nedÄ›litelné mezery" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Na tÅ™età úrovni znak nedÄ›litelné mezery" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Na tÅ™età úrovni znak nedÄ›litelné mezery, nic na úrovni Ätvrté" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Na tÅ™età úrovni znak nedÄ›litelné mezery, tenká nedÄ›litelná mezera na Ätvrté úrovni" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "NOR" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Severolaponské" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Severolaponské, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norsko" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "Num Lock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Chovánà klávesy Delete na numerické klávesnici" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Klávesy numerické klávesnice fungujà stejnÄ› jako u poÄÃtaÄe Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "VýbÄ›r rozloženà numerické klávesnice" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC, darÃ" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC, paÅ¡tó" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC, jihouzbecké" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Okcitánské" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogam" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Urijské" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Internet keyboard pro Ortek MCK-800 MM" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Osetinské" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Osetinské, klávesy Win" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Osetinské, zdÄ›dÄ›né" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "Řada PC-98xx" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "PAK" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pákistán" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "PaÅ¡tské" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Perské, s perskou numerickou klávesnicÃ" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetické" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Fonetické klávesy Win" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "POL" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polsko" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonické" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugalsko" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Prt" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programátorské Dvorak" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "PRT" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Pravá klávesa Alt" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Pravá klávesa Alt (pÅ™i stisknutÃ)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Pravá klávesa Alt nikdy neumožnà výbÄ›r 3. úrovnÄ›" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Pravá klávesa Alt, Shift a pravá klávesa Alt je Multi_Key" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Pravá klávesa Ctrl" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Pravá klávesa Ctrl (pÅ™i stisknutÃ)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Pravá klávesa Ctrl funguje jako pravá klávesa Alt" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Pravá klávesa Shift" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Pravá klávesa Win" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Pravá klávesa Win (pÅ™i stisknutÃ)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Pravoruké" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Pravoruké Dvorak" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumunsko" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumunská klávesnice s nÄ›meckými znaky" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumunská klávesnice s nÄ›meckými znaky, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "ROU" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "RUS" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusko" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Ruské" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Ruské fonetické" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Ruské fonetické Dvorak" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Ruské fonetické, vylouÄit mrtvé klávesy" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Ruská s kazaÅ¡tinou" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "StÅ™ednÃk na tÅ™età úrovni" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Srbsko" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift rušà Caps Lock" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift nerušà Num Lock, namÃsto toho vybÃrá 3. úroveň" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shift s numerickými klávesami funguje jako v MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+Caps Lock" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Jednoduché" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovensko" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovinsko" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Jižnà Afrika" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Jihouzbecké" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Å panÄ›lsko" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Speciálnà klávesy (Ctrl+Alt+<klávesa>) zpracovány v serveru" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SRL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Srà Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "StandardnÃ" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standardnà (cédille)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Standardnà fonetické" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standardnà RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standardnà RSTU s ruským rozloženÃm" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Mrtvé klávesy Sun" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "SVK" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "SVN" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "ZamÄ›nit Ctrl a Caps Lock" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "ZamÄ›nit Esc a Caps Lock" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "SWE" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Å védsko" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Å výcarsko" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "SYR" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Sýrie" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syrské" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syrské fonetické" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tádžikistán" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamilské" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB Typewriter" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII Typewriter" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamilské Unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatarské" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Tegulské" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "THA" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thajsko" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetské" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetské (s ÄÃslicemi ASCII)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh, alternativnÃ" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh, alternativnà fonetické" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh, rozÅ¡ÃÅ™ené" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh, rozÅ¡ÃÅ™ené fonetické" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh, fonetické" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Varianta s vlnovkou (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "TJK" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "K odpovÃdajÃcà klávese na klávesnici Dvorak." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "K odpovÃdajÃcà klávese na klávesnici Qwerty." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "TradiÄnà fonetické" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "TUR" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turecko" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistán" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Psacà stroj" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Rozloženà UCW (pouze znaky s diakritikou)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Americká klávesnice s bosenskými spÅ™ežkami" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Americká klávesnice s bosenskými znaky" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Americká klávesnice s chorvatskými spÅ™ežkami" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Americká klávesnice s chorvatskými znaky" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Americká klávesnice s estonskými znaky" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Americká klávesnice s italskými znaky" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Americká klávesnice s litevskými znaky" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Americká klávesnice se slovinskými znaky" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurtské" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "UKR" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukrajina" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Doplňky Unicode (Å¡ipky a matematické operátory)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Doplňky Unicode (Å¡ipky a matematické operátory). Matematické operátory na výchozà úrovni." -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Spojené královstvÃ" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdské, alternativnà fonetické" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdské, fonetické" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdské, klávesy Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "PoužÃvat bosenské spÅ™ežky" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "PoužÃvat chorvatské spÅ™ežky" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "PoužÃvat francouzské uvozovky" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "PoužÃt LED klávesnice k zobrazenà alternativnÃho rozloženÃ" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "PoužÃvánà mezernÃku k zadávánà znaku nedÄ›litelné mezery" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Na jakékoliv úrovni znak běžné mezery" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "UZB" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistán" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "VNM" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Numerická klávesnice Wang 724 s doplňky Unicode (Å¡ipky a matematické operátory)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Numerická klávesnice Wang 724 s doplňky Unicode (Å¡ipky a matematické operátory). Matematické operátory na výchozà úrovni." -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang, model 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "ZápadnÃ" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Klávesy Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "S klávesou <\\|>" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Se znakem eura na klávese 5" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "S francouzskými uvozovkami" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "jakutské" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Jorubské" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Prohozené Z a Ž" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "ZAR" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/ÄÃslice" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "ÄÃslice" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "posunutý stÅ™ednÃk a uvozovka (zastaralé)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, rozÅ¡ÃÅ™ená klávesa zpÄ›tného lomÃtka" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/ÄÃslice" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" + +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "MÃsto mrtvých kláves kombinovaná diakritika" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Salishské (Coeur d'Alene)" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Mezinárodnà (AltGr kombinované Unicode)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Mezinárodnà (AltGr kombinované Unicode, alternativnÃ)" diff --git a/xorg-server/xkbdata.src/po/da.po b/xorg-server/xkbdata.src/po/da.po index a404aef5e..7ea60f675 100644 --- a/xorg-server/xkbdata.src/po/da.po +++ b/xorg-server/xkbdata.src/po/da.po @@ -11,7 +11,7 @@ # en specialtast til at skrive en email med "Compose email", derfor # synes jeg at det vil være det bedste at kalde det en "Skriv e-mail # tast" og sÃ¥ skrive "compose" bagefter i parentes. (kenneths besked, se ogsÃ¥ Kelds) -# +# # delete key = slettetast # digraph = digraf (En digraf er to bogstaver, der repræsenterer én lyd. # En digraf er ikke det samme som en ligatur.) Eksempler: "hj" og "hv" @@ -24,10 +24,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-15 23:06+0100\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 23:06+0100\n" "Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n" "Language-Team: Danish <dansk@dansk-gruppen.dk>\n" "MIME-Version: 1.0\n" @@ -392,970 +392,983 @@ msgid "Bangladesh" msgstr "Bangladesh" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Bashkirian" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Hviderusland" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgien" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengali" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomisk, DvorakmÃ¥de" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomisk, DvorakmÃ¥de, kun latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Bibelsk hebraisk (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnien-herzegovina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Begge Alt-taster sammen" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Begge Ctrl-taster sammen" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Begge skiftetaster sammen" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Blindskrift" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasilien" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Breton" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarien" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambodia" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Canada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" -msgstr "Caps Lock (skifter til første layout), Skift+Caps Lock (skifter til sidste layout)" +msgstr "CapsLock (skifter til første layout), Skift+CapsLock (skifter til sidste layout)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (mens presset ned), Alt+CapsLock udfører den oprindleige capslockhandling" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" -msgstr "CapsLock agerer som skiftetasten med lÃ¥s. Skift »pauser« Caps Lock" +msgstr "CapsLock agerer som skiftetasten med lÃ¥s. Skift »pauser« CapsLock" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" -msgstr "CapsLock agerer som skiftetasten med lÃ¥s. Skift pÃ¥virker ikke Caps Lock" +msgstr "CapsLock agerer som skiftetasten med lÃ¥s. Skift pÃ¥virker ikke CapsLock" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock er slÃ¥et fra" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" -msgstr "Opførsel for Caps Lock-tast" +msgstr "Opførsel for CapsLock-tast" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" -msgstr "Caps Lock ændrer Skift sÃ¥ alle taster bliver pÃ¥virket" +msgstr "CapsLock ændrer Skift sÃ¥ alle taster bliver pÃ¥virket" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock slÃ¥r smÃ¥/store bogstaver til/fra" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" -msgstr "Bruger intern forstørrelse af bogstaver. Skift sætter Caps Lock »pÃ¥ hold«" +msgstr "Bruger intern forstørrelse af bogstaver. Skift sætter CapsLock »pÃ¥ hold«" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" -msgstr "Bruger intern forstørrelse af bogstaver. Skift pÃ¥virker ikke Caps Lock" +msgstr "Bruger intern forstørrelse af bogstaver. Skift pÃ¥virker ikke CapsLock" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalansk variant med midterpunktum L" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedille" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UBEGRÆNSET" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternativ)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Kina" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chusvash" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chuvash latin" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klassisk" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Klassisk Dvorak" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 taster)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 taster)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 taster)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Placering af Composetast" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Congo, Den Demokratiske Republik" -#: ../rules/base.xml.in.h:162 +# Backspace kunne ogsÃ¥ være Slet tilbage +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" -msgstr "Control + Alt + Slet tilbage" +msgstr "Control + Alt + Rettelsestast" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Kontrol ligger pÃ¥ Alt-tasterne, Alt ligger pÃ¥ Win-tasterne" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Kontrol ligger pÃ¥ Win-tasterne (og de normale Ctrl-taster)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Krimsk tatar (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Krimsk tatar (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Krimsk tatar (Tyrkisk Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Krimsk tatar (Tyrkisk F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Krimsk tatar (Tyrkisk Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroatien" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Ctrl-tast placering" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Skift" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Kyrillisk" # guillemets er dem her: »« -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Kyrillisk med guillemeter" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Kyrillisk, Z og ZHE ombyttet" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Tje" # engelsk fejl her? Hedder det ikke Czech Republic -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Tjekkiet" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Død accent" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Død accent grave" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Standard numerisk tastatur taster" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-taster PC" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell bærbar/notebook Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell bærbar/notebook Precision M series" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude series bærbar" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell Sk-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia tastatur" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danmark" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Tys" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802-serien" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (UK tegnsætning)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak international" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, polske anførelsestegn pÃ¥ tast 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, polske anførelsestegn pÃ¥ anførelsestast" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "Ø" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Østlig" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "SlÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "SlÃ¥ ekstra typografiske karakterer til" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Engelsk" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Retur pÃ¥ numerisk tastatur" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomisk" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estland" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eti" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopien" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-hÃ¥ndteret tastatur" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Udvidet" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Udvidet - Wintaster" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Udvidet omvendt skrÃ¥streg" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-bogstav (F) variant" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fær" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Færøerne" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finland" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Niveau fire tast med abstrakt adskillelser" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Niveau fire tast med komma" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Niveau fire tast med punktum" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Niveau fire tast med punktum, latin-9 begrænsning" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Niveau fire tast med momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Frankrig" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Fransk" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Fransk (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Fransk (forældet)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Fransk dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Fransk, Sun døde taster" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Fransk, slÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO bærbar" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Generisk 101-taster PC" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Generisk 102-taster (Intl) PC" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Generisk 104-taster PC" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Generisk 105-taster (Intl) PC" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgien" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgisk" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgisk AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Tysk (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Tysk, Sun døde taster" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Tysk, slÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Tyskland" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Græ" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grækenland" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Samlet ændring pÃ¥ division-/divideretast" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Roteren" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Glædelig hacking tastatur" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Glædelig hacking tastatur til Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia tastatur" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Sekstentals" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofonisk" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Ung" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Ungarn" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper ligger pÃ¥ Win-tasterne" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, intl" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO-alternativ" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Island" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Inkludere død tilde" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Indien" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "International (AltGr døde taster)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "International (med døde taster)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irland" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irk" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italien" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japan" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx serier)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Japanske tastaturvalg" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" @@ -1364,1741 +1377,1447 @@ msgstr "Jpn" # Weilate, Western Mongol) is the language spoken by the # Kalmyks, that is, the Oirats of Kalmykia (Russian Federation). # Kalmyk belongs to the Oirat subgroup of the Mongolic language family. -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana lÃ¥setast lÃ¥ser" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kashubian" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakh med russisk" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakstan" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Tastsekvens for at slÃ¥ X-serveren ned" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Tast for at vælge tredje niveau" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Tast(er) for at skifte layout" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Numerisk tastatur" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Republikken Korea" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdisk, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdisk, arabisk-latin" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdisk, latin Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdisk, latin Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kyrgyzstan" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Bærbar Compaq (fx Armada) Laptop Keyboard" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Bærbar/notebook Compaq (fx Presario) Internet Keyboard" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Bærbar/notebook eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latin" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latinamerika" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latin unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latin unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latin qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latin unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latin unicode qwerty" # guillemets er dem her: »« -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latin med gullemeter" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Letland" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Venstre Alt" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Venstre Alt (mens trykket ned)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Venstre Alt ombyttes med venstre Win-tast" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Venstre Ctrl" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Venstre Ctrl+Venstre Skift" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Venstre Skift" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Venstre Win" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Venstre Win (skifter til første layout), Højre Win/Menu (skifter til sidste layout)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Venstre Win-tast (mens trykket ned)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Venstre hÃ¥nd" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "VenstrehÃ¥ndet dvorak" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Forældet" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Forældet Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Forældet tast med komma" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Forældet tast med punktum" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Mindre end/Større end" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litauen" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternativ valg)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (alternativ tilvalg 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 ekstra taster via G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (model Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Nedre Sorbian" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Nedre Sorbian (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Lit" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonien" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh gammel" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, sun døde taster" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, slÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" -msgstr "Gør Caps Lock til en ekstra rettelsestast" +msgstr "Gør CapsLock til en ekstra rettelsestast" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" -msgstr "Gør Caps Lock til en ekstra Ctrl" +msgstr "Gør CapsLock til en ekstra Ctrl" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" -msgstr "Gør Caps Lock til en ekstra Esc" +msgstr "Gør CapsLock til en ekstra Esc" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Gør CapsLock til en ekstra Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Gør CapsLock til en ekstra NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Gør CapsLock til en ekstra Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldiverne" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltesisk tastatur med US-layout" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta ligger pÃ¥ venstre Win-tast" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta ligger pÃ¥ Win-tasterne" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, svensk" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Diverse kompatibilitetsvalg" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongoliet" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokko" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Flersproget" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Flersproget, første del" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Flersproget, anden del" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Burma" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F-stil rettelsestast" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo for esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo for USA-tastaturer" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Holland" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Ny fonetisk" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Hollandsk" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ fjerde niveau" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ fjerde niveau, tynd ubrydelige mellemrumskarakter pÃ¥ sjette niveau" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Ubrydelig mellemrumskarakter pÃ¥ fjerde niveau, tynd ubrydelige mellemrumskarakter pÃ¥ sjette niveau (via Ctrl+Skift)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ andet niveau" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ tredje niveau" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ tredje niveau, intet pÃ¥ fjerde niveau" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Ubrydelig mellemrumskarakter pÃ¥ tredje niveau, tynd ubrydelig mellemrumskarakter pÃ¥ fjerde niveau" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Nordligt saami" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Nordligt saami, slÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norge" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Numerisk tastatur slettetast opførsel" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Numerisk tastatur taster fungerer som med Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Numerisk tastatur layout udvælgelse" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC sydlig uzbek" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Occitansk" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetisk" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossetisk, Winkeys" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Ossetisk, forældet" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx-serien" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persisk, med persisk numerisk tastatur" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetisk" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" -msgstr "Fonetisk Wintaster" +msgstr "Fonetiske Wintaster" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polen" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonisk" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro numerisk tastatur" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programmørdvorak" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Højre Alt" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Højre Alt (mens trykket ned)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Højre Alt-tast vælger aldrig tredje niveau" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Højre Alt-tast, Skift+højre Alt-tast er fler_tast" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Højre Ctrl" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Højre Ctrl-tast (mens trykket ned)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Højre Ctrl-tast virker som højre Alt" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Højre Skift" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Højre Win" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Højre Win-tast (mens trykket ned)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Højre hÃ¥nd" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Højre hÃ¥nd dvorak" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumænien" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumænsk tastatur med tyske bogstaver" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumænsk tastatur med tyske bogstaver, eliminer døde taster" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rum" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusland" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Russisk" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Russisk fonetisk" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Russisk fonetisk dvorak" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Russisk fonetisk, slÃ¥ døde taster fra" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Russisk med kazakh" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Semikolon pÃ¥ tredje niveau" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbien" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" -msgstr "Skift afbryder Caps Lock" +msgstr "Skift afbryder CapsLock" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Skift afbryder ikke NumLock, vælger tredje niveau i steden for" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Skift med numeriske taster virker som i MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" -msgstr "Skift+Caps Lock" +msgstr "Skift+CapsLock" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Simpel" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakiet" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenien" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Sydafrika" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Sydlig uzbek" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanien" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Specialtaster (Ctrl+Alt+<key>) hÃ¥ndteret i en server" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (Cedilla)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Standard fonetisk" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standard-RSTU pÃ¥ russisk layout" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun døde taster" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" -msgstr "Ombyt Ctrl og Caps Lock" +msgstr "Ombyt Ctrl og CapsLock" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" -msgstr "Ombyt Ctrl og Caps Lock" +msgstr "Ombyt Ctrl og CapsLock" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Sve" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Sverige" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Schweiz" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet-pc)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syrien" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syrisk" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syrisk fonetisk" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadjikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamil" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB-skrivemaskine" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII-skrivemaskine" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamil unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailand" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetansk" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetansk (med ASCII-numre)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternativ" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh alternativ fonetisk" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh udvidet" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh udvidet fonetisk" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh fonetisk" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilde (~) variant" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Til den tilsvarende tast i et Dvoraktastatur." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Til den tilsvarende tast pÃ¥ et Qwertytastatur." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Traditionel fonetisk" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tyr" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Tyrkiet" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistan" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Skrivemaskine" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW-layout (kun bogstaver med accent)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "US-tastatur med bosniske digrafer" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "US-tastatur med bosniske bogstaver" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "US-tastatur med kroatiske digrafer" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "US-tastatur med kroatiske bogstaver" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "US-tastatur med esttiske bogstaver" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "US-tastatur med italienske bogstaver" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "US-tastatur med litauiske bogstaver" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "US-tastatur med slovenske bogstaver" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraine" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unicode tilføjelser (pile og matematiske tegn)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unicode tilføjelser (pile og matematiske tegn). Matematiske tegn pÃ¥ standardniveau" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "United Kingdom" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, alternativ fonetisk" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, fonetisk" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Win-taster" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Anvend bosniske digrafer" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Anvend kroatiske digrafer" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Anvend guillemeter som anførelsestegn" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Brug tastatur-LED til at vise alternativ layout" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Brug mellemrum for at indtaste ubrydelig mellemrumskarakter" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Normal mellemrum pÃ¥ alle niveauer" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Usbekistan" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 numerisk tastatur med unicode tilføjelser (pile og matematiske tegn)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 numerisk tastatur med unicode tilføjelser (pile og matematiske tegn). Matematiske tegn pÃ¥ standardniveau" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Vestlig" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-taster" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Med <\\|> tast" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Med eurotegn pÃ¥ 5" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Med guillemeter" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z og ZHE ombyttet" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/cifre" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "cifre" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "forkert placeret semikolon og anførelsestegn (forældet)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, udvidet omvendt skrÃ¥streg" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/cifre" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" -#~ msgid "Brazilian ABNT2" -#~ msgstr "Brasiliansk ABNT2" - -#~ msgid "Japanese 106-key" -#~ msgstr "Japansk 106-taster" - -#~ msgid "Kir" -#~ msgstr "Kir" - -#~ msgid "Korean 106-key" -#~ msgstr "Koreansk 106-tast" - -#~ msgid "Super is mapped to Win keys" -#~ msgstr "Super ligger pÃ¥ Win-tasterne" - -#~ msgid "US keyboard with Slovenian digraphs" -#~ msgstr "US-tastatur med slovenske digrafer" - -#~ msgid "Unicode" -#~ msgstr "Unicode" - -#~ msgid "Use Slovenian digraphs" -#~ msgstr "Anvend slovenske digrafer" - -#~ msgid "Add the EuroSign to the 2 key." -#~ msgstr "Tilføj eurotegnet til 2-tasten." - -#~ msgid "Add the EuroSign to the 4 key." -#~ msgstr "Tilføj eurotegnet til 4-tasten." - -#~ msgid "Add the EuroSign to the 5 key." -#~ msgstr "Tilføj eurotegnet til 5-tasten." - -#~ msgid "Add the EuroSign to the E key." -#~ msgstr "Tilføj eurotegnet til E-tasten." - -#~ msgid "Alt+Ctrl change layout." -#~ msgstr "Alt+Ctrl skifter layout." - -#~ msgid "Alt+Shift change layout." -#~ msgstr "Alt+skift skifter layout." - -#~ msgid "CapsLock LED shows alternative layout." -#~ msgstr "Caps Lock LED viser alternativ layout." - -#~ msgid "CapsLock just locks the Shift modifier." -#~ msgstr "Caps Lock lÃ¥ser kun skift-ændreren." - -#~ msgid "CapsLock key changes layout." -#~ msgstr "Caps Lock-tast skifter layout." - -#~ msgid "Ctrl+Shift change layout." -#~ msgstr "Ctrl+skift skifter layout." - -#~ msgid "Hewlett-Packard Internet Keyboard 5181" -#~ msgstr "Hewlett-Packard Internet Keyboard 5181" - -#~ msgid "Hewlett-Packard Internet Keyboard 5185" -#~ msgstr "Hewlett-Packard Internet Keyboard 5185" - -#~ msgid "Hewlett-Packard SK-2505 Internet Keyboard" -#~ msgstr "Hewlett-Packard SK-2505 Internet Keyboard" - -#~ msgid "IBM Rapid Access II (alternate option)" -#~ msgstr "IBM Rapid Access II (alternativ)" - -#~ msgid "LCtrl+LShift change layout." -#~ msgstr "Venstre Ctrl+skift skifter layout." - -#~ msgid "Layout switching" -#~ msgstr "Layout ombytning" - -#~ msgid "Left Alt key changes layout." -#~ msgstr "Venstre Alt-tast skifter layout." - -#~ msgid "Left Ctrl key changes layout." -#~ msgstr "Venstre Ctrl-tast skifter layout." - -#~ msgid "Left Shift key changes layout." -#~ msgstr "Venstre skiftetast skifter layout." - -#~ msgid "Left Win-key changes layout." -#~ msgstr "Venstre Win-tast skifter layout." - -#~ msgid "Neostyle" -#~ msgstr "Neostil" - -#~ msgid "NumLock LED shows alternative layout." -#~ msgstr "Num Lock LED viser alternativ layout." - -#~ msgid "Press Left Alt key to choose 3rd level." -#~ msgstr "Tryk venstre Alt-tast for at vælge tredje niveau." - -#~ msgid "Press Left Win-key to choose 3rd level." -#~ msgstr "Tryk venstre Win-tast for at vælge tredje niveau." - -#~ msgid "Press Right Alt key to choose 3rd level." -#~ msgstr "Tryk højre Alt-tast for at vælge tredje niveau." - -#~ msgid "Press Right Ctrl to choose 3rd level." -#~ msgstr "Tryk højre Ctrl-tast for at vælge tredje niveau." - -#~ msgid "Press Right Win-key to choose 3rd level." -#~ msgstr "Tryk højre Win-tast for at vælge tredje niveau." - -#~ msgid "Press any of Alt keys to choose 3rd level." -#~ msgstr "Tryk pÃ¥ en af Alt-tasterne for at vælge tredje niveau." - -#~ msgid "Press any of Win-keys to choose 3rd level." -#~ msgstr "Tryk pÃ¥ en af Win-tasterne for at vælge tredje niveau." - -#~ msgid "Right Alt key changes layout." -#~ msgstr "Højre Alt-tast skifter gruppe." - -#~ msgid "Right Ctrl key changes layout." -#~ msgstr "Højre Ctrl-tast skifter layout." - -#~ msgid "Right Shift key changes layout." -#~ msgstr "Højre skiftetast skifter gruppe" - -#~ msgid "Right Win-key changes layout." -#~ msgstr "Højre Win-tast skifter layout." - -#~ msgid "ScrollLock LED shows alternative layout." -#~ msgstr "Scroll Lock LED viser alternativ layout." - -#~ msgid "Shift+CapsLock changes layout." -#~ msgstr "Skift+Caps Lock-tast skifter layout." - -#~ msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -#~ msgstr "Ombyt tastkoder pÃ¥ to taster nÃ¥r Mac-tastaturer fejlopfanges af kerne." - -#~ msgid "Third level choosers" -#~ msgstr "Tredje niveaus vælgere" - -#~ msgid "Urdu" -#~ msgstr "Urdu" - -#~ msgid "A Tamil typewrite-style keymap; TAB encoding" -#~ msgstr "En tamilsk skrivemaskine-tastaturudlægning; TAB-kodning" - -#~ msgid "A Tamil typewrite-style keymap; TSCII encoding" -#~ msgstr "En tamilsk skrivemaskine-tastaturudlægning; TSCII-kodning" - -#~ msgid "A Tamil typewrite-style keymap; Unicode encoding" -#~ msgstr "En tamilsk skrivemaskine-tastaturudlægning; Unicode-kodning" - -#~ msgid "Arb" -#~ msgstr "Arb" - -#~ msgid "Bosnian" -#~ msgstr "Bosnisk" - -#~ msgid "Burmese" -#~ msgstr "Burmesisk" - -#~ msgid "CloGaelach Laptop" -#~ msgstr "CloGaelach-bærbar" - -#~ msgid "Czech (qwerty)" -#~ msgstr "Tjekkisk (qwerty)" - -#~ msgid "Danish" -#~ msgstr "Dansk" - -#~ msgid "Dutch" -#~ msgstr "Hollandsk" - -#~ msgid "Dvo" -#~ msgstr "Dvo" - -#~ msgid "Finnish" -#~ msgstr "Finsk" - -#~ msgid "French Canadian" -#~ msgstr "Fransk-canadisk" - -#~ msgid "Georgian (latin)" -#~ msgstr "Georgisk (latinsk)" - -#~ msgid "Georgian (russian)" -#~ msgstr "Georgisk (russisk)" - -#~ msgid "Grc" -#~ msgstr "Græ" - -#~ msgid "Group Shift/Lock behavior" -#~ msgstr "Gruppeskift/-lÃ¥s-opførsel" - -#~ msgid "Hin" -#~ msgstr "Hin" - -#~ msgid "INSCRIPT layout" -#~ msgstr "INSCRIPT-layout" - -#~ msgid "IS434 laptop" -#~ msgstr "IS434-bærbar" - -#~ msgid "Iku" -#~ msgstr "Iku" - -#~ msgid "Irish" -#~ msgstr "Irsk" - -#~ msgid "Italian" -#~ msgstr "Italiensk" - -#~ msgid "Lithuanian azerty standard" -#~ msgstr "Litauisk azerty-standard" - -#~ msgid "Lithuanian qwerty \"numeric\"" -#~ msgstr "Litauisk qwerty-numerisk" - -#~ msgid "Logitech iTouch keyboard Internet Navigator" -#~ msgstr "Logitech iTouch keyboard Internet Navigator" - -#~ msgid "Northern Saami (Finland)" -#~ msgstr "Nordligt Saami (Finland)" - -#~ msgid "Northern Saami (Sweden)" -#~ msgstr "Nordligt Saami (Sverige)" - -#~ msgid "Ogh" -#~ msgstr "Ogh" - -#~ msgid "Ori" -#~ msgstr "Ori" - -#~ msgid "PC104" -#~ msgstr "PC104" - -#~ msgid "Polish" -#~ msgstr "Polsk" - -#~ msgid "Polish (qwertz)" -#~ msgstr "Polsk (qwertz)" - -#~ msgid "PowerPC PS/2" -#~ msgstr "PowerPC PS/2" - -#~ msgid "Sapmi" -#~ msgstr "Sapmi" - -#~ msgid "Scg" -#~ msgstr "Scg" - -#~ msgid "Slovak (qwerty)" -#~ msgstr "Slovakisk (qwerty)" - -#~ msgid "Sv" -#~ msgstr "Sv" - -#~ msgid "Swedish" -#~ msgstr "Svensk" - -#~ msgid "Swiss French" -#~ msgstr "Schweizisk-fransk" - -#~ msgid "Tel" -#~ msgstr "Tel" - -#~ msgid "Thai (Kedmanee)" -#~ msgstr "Thai (Kedmanee)" - -#~ msgid "Tml" -#~ msgstr "Tml" - -#~ msgid "Turkish" -#~ msgstr "Tyrkisk" - -#~ msgid "Turkish Alt-Q Layout" -#~ msgstr "Tyrkisk Alt-Q-layout" - -#~ msgid "U.S. English w/ ISO9995-3" -#~ msgstr "U.S. Engelsk w/ ISO9995-3" - -#~ msgid "U.S. English w/ dead keys" -#~ msgstr "U.S. Engelsk m. døde taster" - -#~ msgid "US" -#~ msgstr "US" - -#~ msgid "Yug" -#~ msgstr "Yug" - -#~ msgid "Yugoslavian" -#~ msgstr "Yugoslavisk" - -#~ msgid "abnt2" -#~ msgstr "abnt2" - -#~ msgid "bksl" -#~ msgstr "omsk" - -#~ msgid "laptop" -#~ msgstr "bæbar" - -#~ msgid "sefi" -#~ msgstr "sefi" - -#~ msgid "si1452" -#~ msgstr "si1452" - -#~ msgid "uni/101/qwerty/comma" -#~ msgstr "uni/101/qwerty/komma" - -#~ msgid "uni/101/qwerty/dot" -#~ msgstr "uni/101/qwerty/punktum" - -#~ msgid "uni/101/qwertz/comma" -#~ msgstr "uni/101/qwertz/komma" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" -#~ msgid "uni/101/qwertz/dot" -#~ msgstr "uni/101/qwertz/punktum" +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" -#~ msgid "uni/102/qwerty/comma" -#~ msgstr "uni/102/qwerty/komma" +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Sammensætte accenter fremfor døde taster" -#~ msgid "uni/102/qwerty/dot" -#~ msgstr "uni/102/qwerty/punktum" +# http://en.wikipedia.org/wiki/Interior_Salish_languages +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" -#~ msgid "uni/102/qwertz/comma" -#~ msgstr "uni/102/qwertz/komma" +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "International (AltGr Unicode sammensætning)" -#~ msgid "uni/102/qwertz/dot" -#~ msgstr "uni/102/qwertz/punktum" +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "International (AltGr Unicode sammensætning, alternativ)" diff --git a/xorg-server/xkbdata.src/po/de.po b/xorg-server/xkbdata.src/po/de.po index 962483568..872ca67db 100644 --- a/xorg-server/xkbdata.src/po/de.po +++ b/xorg-server/xkbdata.src/po/de.po @@ -1,15 +1,15 @@ # German translation of xkeyboard-config. # This file is distributed under the same license as the xkeyboard-config package. -# Mario Blättermann <mariobl@gnome.org>, 2009. # Christian Kirbach <Christian.Kirbach@googlemail.com>, 2009. +# Mario Blättermann <mariobl@gnome.org>, 2009. # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-13 21:02+0100\n" -"Last-Translator: Mario Blättermann <mario.blaettermann@t-online.de>\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-16 21:08+0100\n" +"Last-Translator: Mario Blättermann <mariobl@gnome.org>\n" "Language-Team: German <translation-team-de@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" @@ -370,2383 +370,2439 @@ msgid "Bangladesh" msgstr "Bangladesch" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Baschkirisch" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Weißrussland" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgien" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengalisch" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomisch, Dvorak-ähnlich" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomisch, Dvorak-ähnlich, nur latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Althebräisch (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnien-Herzegowina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Beide Alt-Tasten gleichzeitig" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Beide Steuerungstasten gleichzeitig" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Beide Umschalttasten gleichzeitig" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasilien" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretonisch" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarien" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kambodscha" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Feststelltaste" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "Feststelltaste" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "Feststelltaste (zur ersten Belegung), Umschalttaste+Feststelltaste (zur letzten Belegung)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "Feststelltaste (gedrückt halten), Alt+Feststelltaste führen die normale Feststelltasten-Aktion aus" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "Feststelltaste arbeitet als Umschalttaste mit Sperrung. Umschalttaste »unterbricht« Feststelltaste" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "Feststelltaste arbeitet als Umschalttaste mit Sperrung. Umschalttaste beeinflusst Feststelltaste nicht" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "Feststelltaste ist deaktiviert" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Verhalten der Feststelltaste" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "Feststelltaste kehrt Umschalttaste um, so dass alle Tasten beeinflusst werden" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "Feststelltaste kehrt die normale Großschreibung alphabetischer Zeichen um" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "Feststelltaste verwendet interne Großschreibung. Umschalttaste »unterbricht« Feststelltaste" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "Feststelltaste verwendet interne Großschreibung. Umschalttaste beeinflusst Feststelltaste nicht" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalanische Variante mit mittelpunktiertem L" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilla" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternative Option)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "China" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Tschuwaschisch" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Tschuwaschisch (lateinische Schrift)" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klassisch" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak (klassisch)" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 Tasten)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 Tasten)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 Tasten)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Position der Compose-Taste" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Demokratische Republik Kongo" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" -msgstr "Strg + Alt + Entf" +msgstr "Strg + Alt + Löschtaste" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Strg ist den Alt-Tasten zugeordnet, Alt ist den Windows-Tasten zugeordnet" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Strg ist den Win-Tasten zugeordnet (und den üblichen Strg-Tasten)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Krimtatarisch (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Krimtatarisch (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Krimtatarisch (Türkisch Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Krimtatarisch (Türkisch F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Krimtatarisch (Türkisch Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroatien" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Position der Strg-Taste" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Strg+Umschalttaste" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Kyrillisch" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Kyrillisch mit Anführungszeichen" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Kyrillisch, »З« und »Ж« vertauscht" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Tschechien" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Ohne Acute-(')Akzentzeichen" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Ohne Grave-(`) und Acute-(')Akzentzeichen" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Vorgegebene Nummernblocktasten" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell PC-Tastatur mit 101 Tasten" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Laptop/Notebook Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Laptop/Notebook Precision-M-Serie" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude-Laptop" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keybard" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Dänemark" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802-Serie" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (britische Punktierung)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak international" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, polnische Anführungszeichen auf Taste 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, polnische Anführungszeichen auf Taste mit Zitatzeichen" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Östlich" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" -msgstr "Akzenttatsen deaktivieren" +msgstr "Akzenttasten deaktivieren" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Typographische Sonderzeichen aktivieren" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Englisch" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Eingabetaste im Nummernblock" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomic" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estland" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Äthiopien" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-verwaltete Tastatur" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Erweitert" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Erweitert - Windows-Tasten" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Erweiterter Backslash" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-Variante" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Färöer-Inseln" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finnland" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Taste der vierten Ebene mit abstrakten Trennern" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Taste der vierten Ebene mit Komma" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Taste der vierten Ebene mit Punkt" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Taste der vierten Ebene mit Punkt, latin-9-Einschränkung" # momayyez? Was ist das? -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Taste der vierten Ebene mit »momayyez«" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Frankreich" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Französisch" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Französisch (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Französisch (veraltet)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Französisch (Dvorak)" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Französisch, Sun-Akzenttasten" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Französisch, ohne Akzenttasten" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO Laptop" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Generische PC-Tastatur mit 101 Tasten" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Generische PC-Tastatur mit 102 Tasten (Intl)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Generische PC-Tastatur mit 104 Tasten" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Generische PC-Tastatur mit 105 Tasten (Intl)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgien" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgisch" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgisch, AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Deutsch (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Deutsch, Sun-Akzenttasten" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Deutsch, ohne Akzenttasten" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Deutschland" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Griechenland" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Gruppenumschalter auf der Multiplikations-/Divisionstaste" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "»Happy Hacking Keyboard« für Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Haussa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Hexadezimal" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homophonic" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Ungarn" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper ist den Win-Tasten zugeordnet" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO-Alternative" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Island" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Akzent-Tilde einschließen" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Indien" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "International (AltGr-Akzenttasten)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "International (mit Akzenttasten)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irland" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italien" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japan" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx-Serie)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Japanische Tastaturoptionen" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmückisch" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana-Sperrtaste ist gesperrt" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kaschubisch" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kasachisch mit russischer Belegung" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kasachstan" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Tastenkombination zum erzwungenen Beenden des X-Servers" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Taste zum Wechsel in die dritte Tastaturebene" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Taste(n) zum Wechseln der Belegung" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Nummernblock" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Korea, Republik" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdisch, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdisch, Arabisch-Lateinisch" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdisch, Lateinisches Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdisch, Lateinisches Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgisistan" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Compaq Laptop/Notebook-Tastatur (z.B. Armada) Laptop-Tastatur" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Compaq Laptop/Notebook-Tastatur (z.B. Presario) Laptop-Tastatur" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Laptop/notebook eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latein" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Lateinamerikanisch" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latein (Unicode)" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Lateinische qwerty-Tastatur (Unicode)" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Lateinische qwerty-Tastatur" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latein (Unicode)" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Lateinische qwerty-Tastatur (Unicode)" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Lateinisch mit Anführungszeichen" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lettland" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Linke Alt-Taste" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Linke Alt-Taste (gedrückt halten)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Linke Alt-Taste ist gegen linke Windows-Taste vertauscht" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Linke Strg-Taste" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Linke Strg-Taste+Linke Umschalttaste" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Linke Umschalttaste" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Linke Windows-Taste" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Linke Windows-Taste (zur ersten Belegung), rechte Windows/Menütaste (zur letzten Belegung)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Linke Windows-Taste (gedrückt halten)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Linkshändig" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorak (linkshändig)" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Veraltet" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Wang 724 (veraltet)" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Veraltete Taste mit Komma" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Veraltete Taste mit Punkt" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Kleiner als/größer als" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litauen" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternative Option)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (alternative Option 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15-Sondertasten über den G1-Daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Generische Logitech-Tastatur" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (Modell Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Niedersorbisch" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Niedersorbisch (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Mazedonien" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh (Alt)" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Sun-Akzenttasten" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh (ohne Akzenttasten)" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Feststelltaste als zusätzliche Löschtaste verwenden" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Feststelltaste als zusätzliche Strg-Taste verwenden" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Feststelltaste als zusätzliche Esc-Taste verwenden." -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Feststelltaste als zusätzliche Hyper-Taste verwenden" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Feststelltaste als zusätzliche NumLock-Taste verwenden." + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Feststelltaste als zusätzliche Super-Taste verwenden." + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Malediven" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltesische Tastatur mit US-Belegung" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menü" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta ist der linken Windows-Taste zugeordnet" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta ist den Windows-Tasten zugeordnet" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Schwedisch" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Verschiedene Optionen zur Kompatibilität" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolei" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokko" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Mehrsprachig" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Mehrsprachig, erster Teil" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Mehrsprachig, zweiter Teil" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Löschtaste wie NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo für Esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo für US-Tastaturen" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Niederlande" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Phonetisch, neu" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Nicht umbrechbares Leerzeichen in der vierten Tastaturebene" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Nicht umbrechbares Leerzeichen in der vierten Tastaturebene, schmales nicht umbrechbares Leerzeichen in der sechsten Ebene" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Nicht umbrechbares Leerzeichen in der vierten Tastaturebene, schmales nicht umbrechbares Leerzeichen in der sechsten Ebene (mit Strg + Umschalttaste)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Nicht umbrechbares Leerzeichen in der zweiten Tastaturebene" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Nicht umbrechbares Leerzeichen in der dritten Tastaturebene" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Nicht umbrechbares Leerzeichen in der dritten Tastaturebene, nichts in der vierten Ebene" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Nicht umbrechbares Leerzeichen in der dritten Tastaturebene, schmales nicht umbrechbares Leerzeichen in der vierten Ebene" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Nördliches Saami" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Nördliches Saami, ohne Akzenttasten" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norwegen" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Verhalten der Löschtaste des Nummernblocks" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Tasten des Nummernblocks arbeiten wie bei Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Belegungsauswahl des Nummernblocks" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Paschtunisch" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Süd-Usbekisch" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Okzitanisch" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internettastatur" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetisch" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossetisch, Windows-Tasten" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Ossetisch, veraltet" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx-Serie" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Paschtunisch" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persisch. mit persischem Nummernblock" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Phonetisch" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Phonetisch, Windows-Tasten" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polen" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonic" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorak für Programmierer" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Rechte Alt-Taste" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Rechte Alt-Taste (gedrückt halten)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Rechte Alt-Taste wählt niemals die dritte Tastaturebene." -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Rechte Alt-Taste, Umschalttaste+rechte Alt-Taste ist Multi-Taste" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Rechte Strg-Taste" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Rechte Strg-Taste (gedrückt halten)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Rechte Strg-Taste wie rechte Alt-Taste" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Rechte Umschalttaste" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Rechte Windows-Taste" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Rechte Windows-Taste (gedrückt halten)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Rechtshändig" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorak (rechtshändig)" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumänien" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumänische Tastatur mit deutschen Buchstaben" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumänische Tastatur mit deutschen Buchstaben, ohne Akzenttasten" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Russland" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Russisch" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Russisch (phonetisch)" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Russisch (phonetisch, Dvorak)" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Russisch (phonetisch), ohne Akzenttasten" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Russisch mit kasachischer Belegung" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Rollen" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "Rollen" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Semikolon in der dritten Tastaturebene" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbien" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Umschalttaste deaktiviert Feststelltaste" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Umschalttaste deaktiviert NumLock nicht, wechselt stattdessen in die dritte Tastaturebene" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Unschalttaste funktioniert mit den Tasten des Nummernblocks wie in MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Umschalt-+Feststelltaste" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Einfach" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slowakei" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slowenien" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Südafrika" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Süd-Usbekisch" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanien" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Spezialtasten für Server (Strg+Alt+<Taste>)" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (Cedilla)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Standard, phonetisch" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standard-RSTU mit russischer Belegung" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Typ 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun-Akzenttasten" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Strg-Taste und Feststelltaste vertauschen" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Esc und Feststelltaste vertauschen" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Schweden" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Schweiz" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syrien" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syrisch" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syrisch (phonetisch)" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "Thai (TIS-620)" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadschikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamilisch" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamilisch (TAB Schreibmaschine)" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamilisch (TSCII Schreibmaschine)" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamilisch (Unicode)" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatarisch" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailand" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetisch" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetanisch (mit ASCII-Ziffern)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh (alternativ)" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh (alternativ, phonetisch)" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh (erweitert)" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh (erweitert, phonetisch)" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh (phonetisch)" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilde-Variante (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Zur entsprechenden Taste einer Dvorak-Tastatur." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Zur entsprechenden Taste einer Qwerty-Tastatur." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Traditionell (phonetisch)" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Türkei" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenien" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Schreibmaschine" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW-Belegung (nur akzentuierte Buchstaben)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "US-Tastatur mit bosnischen Digraphen" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "US-Tastatur mit bosnischen Buchstaben" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "US-Tastatur mit kroatischen Digraphen" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "US-Tastatur mit kroatischen Buchstaben" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "US-Tastatur mit estnischen Buchstaben" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "US-Tastatur mit italienischen Buchstaben" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "US-Tastatur mit litauischen Buchstaben" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "US-Tastatur mit slowenischen Buchstaben" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurtisch" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraine" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unicode-Ergänzungen (Pfeile und mathematische Operatoren)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unicode-Ergänzungen (Pfeile und mathematische Operatoren). Mathematische Operatoren befinden sich in der Standardebene." -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Vereinigtes Königreich" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, Alternative (phonetisch)" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, phonetisch" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Windows-Tasten" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Bosnische Digraphen verwenden" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Kroatische Digraphen verwenden" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Anführungszeichen für Zitate verwenden" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Tastatur-LED zur Anzeige der alternativen Belegung verwenden" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Leertaste zur Eingabe nicht umbrechbarer Zeichen verwenden" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Leertaste gibt in jeder Ebene stets Leerzeichen aus" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Usbekistan" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 mit Unicode-Ergänzungen (Pfeile und mathematische Operatoren)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 mit Unicode-Ergänzungen (Pfeile und mathematische Operatoren). Mathematische Operatoren in der Standardebene" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang Modell 724 (azerty)" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Westlich" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Modell XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-Tasten" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Mit <\\|>-Taste" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "mit Euro-Symbol auf »5«" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Mit Anführungszeichen" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Jakutisch" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Joruba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "»З« und »Ж« sind vertauscht" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/Ziffern" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "Ziffern" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "Falsch platziertes Semikolon und Anführungszeichen (veraltet)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "LyX" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, erweiterter Backslash" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/Ziffern" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Akzente kombinieren, anstelle von Akzenttasten" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "International (AltGr-Unicode-Kombination)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "International (AltGr-Unicode-Kombination, alternativ)" + +#~ msgid "Keypad" +#~ msgstr "Nummernblock" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pro Keypad" + +#~ msgid "Standard Phonetic" +#~ msgstr "Standard, phonetisch" + #~ msgid "Brazilian ABNT2" #~ msgstr "ABNT2 (Brasilianisch)" diff --git a/xorg-server/xkbdata.src/po/eo.po b/xorg-server/xkbdata.src/po/eo.po index 3f9a5c3fd..710c37ca7 100644 --- a/xorg-server/xkbdata.src/po/eo.po +++ b/xorg-server/xkbdata.src/po/eo.po @@ -1,2689 +1,2829 @@ # Esperanta traduko por 'xkeyboard-config' -# Copyright (C) 2008 Free Software Foundation, Inc. +# Copyright (C) 2008, 2009 Free Software Foundation, Inc. # This file is distributed under the same license as the xkeyboard-config package. -# Felipe Castro <fefcas@gmail.com>, 2008. +# Felipe Castro <fefcas@gmail.com>, 2008, 2009. # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.5\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-01-13 23:12+0000\n" -"PO-Revision-Date: 2009-01-16 18:26-0300\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-19 19:59-0300\n" "Last-Translator: Felipe Castro <fefcas@gmail.com>\n" "Language-Team: Esperanto <translation-team-eo@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../rules/base.xml.in.h:1 ../rules/evdev.xml.in.h:1 +#: ../rules/base.xml.in.h:1 msgid "(F)" msgstr "(F)" -#: ../rules/base.xml.in.h:2 ../rules/evdev.xml.in.h:2 +#: ../rules/base.xml.in.h:2 msgid "(Legacy) Alternative" msgstr "(Malmoderna) Alternativa" -#: ../rules/base.xml.in.h:3 ../rules/evdev.xml.in.h:3 +#: ../rules/base.xml.in.h:3 msgid "(Legacy) Alternative, Sun dead keys" msgstr "(Malmoderna) Alternativa, senpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:4 ../rules/evdev.xml.in.h:4 +#: ../rules/base.xml.in.h:4 msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(Malmoderna) Alternativa, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:5 ../rules/evdev.xml.in.h:5 +#: ../rules/base.xml.in.h:5 msgid "101/104 key Compatible" msgstr "Kongrua al 101/104 klavoj" -#: ../rules/base.xml.in.h:6 ../rules/evdev.xml.in.h:6 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "101/qwerty/komo/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:7 ../rules/evdev.xml.in.h:7 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "101/qwerty/komo/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:8 ../rules/evdev.xml.in.h:8 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "101/qwerty/punkto/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:9 ../rules/evdev.xml.in.h:9 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "101/qwerty/punkto/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:10 ../rules/evdev.xml.in.h:10 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "101/qwertz/komo/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:11 ../rules/evdev.xml.in.h:11 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "101/qwertz/komo/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:12 ../rules/evdev.xml.in.h:12 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "101/qwertz/punkto/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:13 ../rules/evdev.xml.in.h:13 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "101/qwertz/punkto/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:14 ../rules/evdev.xml.in.h:14 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "102/qwerty/komo/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:15 ../rules/evdev.xml.in.h:15 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "102/qwerty/komo/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:16 ../rules/evdev.xml.in.h:16 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "102/qwerty/punkto/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:17 ../rules/evdev.xml.in.h:17 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "102/qwerty/punkto/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:18 ../rules/evdev.xml.in.h:18 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "102/qwertz/komo/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:19 ../rules/evdev.xml.in.h:19 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "102/qwertz/komo/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:20 ../rules/evdev.xml.in.h:20 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "102/qwertz/punkto/SenpaÅaj klavoj" -#: ../rules/base.xml.in.h:21 ../rules/evdev.xml.in.h:21 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "102/qwertz/punkto/Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:22 ../rules/evdev.xml.in.h:22 +#: ../rules/base.xml.in.h:22 msgid "2" msgstr "2" -#: ../rules/base.xml.in.h:23 ../rules/evdev.xml.in.h:23 +#: ../rules/base.xml.in.h:23 msgid "4" msgstr "4" -#: ../rules/base.xml.in.h:24 ../rules/evdev.xml.in.h:24 +#: ../rules/base.xml.in.h:24 msgid "5" msgstr "5" -#: ../rules/base.xml.in.h:25 ../rules/evdev.xml.in.h:25 +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:26 ../rules/evdev.xml.in.h:26 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:27 ../rules/evdev.xml.in.h:27 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech Wireless Desktop RFKB-23" -#: ../rules/base.xml.in.h:28 ../rules/evdev.xml.in.h:28 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI LaÅnorma" -#: ../rules/base.xml.in.h:29 ../rules/evdev.xml.in.h:29 +#: ../rules/base.xml.in.h:29 msgid "ATM/phone-style" msgstr "ATM/telefon-stilo" -#: ../rules/base.xml.in.h:30 ../rules/evdev.xml.in.h:30 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:31 ../rules/evdev.xml.in.h:31 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:32 ../rules/evdev.xml.in.h:32 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:33 ../rules/evdev.xml.in.h:33 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Acer Laptop" -#: ../rules/base.xml.in.h:34 ../rules/evdev.xml.in.h:34 +#: ../rules/base.xml.in.h:34 msgid "Add the standard behavior to Menu key" msgstr "Aldoni laÅnorman funkciadon al la klavo Menu" -#: ../rules/base.xml.in.h:35 ../rules/evdev.xml.in.h:35 +#: ../rules/base.xml.in.h:35 msgid "Adding Esperanto circumflexes (supersigno)" msgstr "Aldonado de Esperantaj supersignoj" -#: ../rules/base.xml.in.h:36 ../rules/evdev.xml.in.h:36 +#: ../rules/base.xml.in.h:36 msgid "Adding EuroSign to certain keys" msgstr "Aldonado de EÅroSigno al iuj klavoj" -#: ../rules/base.xml.in.h:37 ../rules/evdev.xml.in.h:37 +#: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" msgstr "Advance Scorpius KI" -#: ../rules/base.xml.in.h:38 ../rules/evdev.xml.in.h:38 +#: ../rules/base.xml.in.h:38 msgid "Afg" msgstr "Afg" -#: ../rules/base.xml.in.h:39 ../rules/evdev.xml.in.h:39 +#: ../rules/base.xml.in.h:39 msgid "Afghanistan" msgstr "Afganujo" -#: ../rules/base.xml.in.h:40 ../rules/evdev.xml.in.h:40 +#: ../rules/base.xml.in.h:40 msgid "Akan" msgstr "Akan" -#: ../rules/base.xml.in.h:41 ../rules/evdev.xml.in.h:41 +#: ../rules/base.xml.in.h:41 msgid "Alb" msgstr "Alb" -#: ../rules/base.xml.in.h:42 ../rules/evdev.xml.in.h:42 +#: ../rules/base.xml.in.h:42 msgid "Albania" msgstr "Albanujo" -#: ../rules/base.xml.in.h:43 ../rules/evdev.xml.in.h:43 +#: ../rules/base.xml.in.h:43 msgid "Alt and Meta are on Alt keys" msgstr "Alt kaj Meta estas ĉe la klavoj Alt" -#: ../rules/base.xml.in.h:44 ../rules/evdev.xml.in.h:44 +#: ../rules/base.xml.in.h:44 msgid "Alt is mapped to Right Win, Super to Menu" msgstr "Alt estas mapita al la dekstra klavo Win kaj Super al Menu" -#: ../rules/base.xml.in.h:45 ../rules/evdev.xml.in.h:45 +#: ../rules/base.xml.in.h:45 msgid "Alt+CapsLock" msgstr "Alt+CapsLock" -#: ../rules/base.xml.in.h:46 ../rules/evdev.xml.in.h:46 +#: ../rules/base.xml.in.h:46 msgid "Alt+Ctrl" msgstr "Alt+Ctrl" -#: ../rules/base.xml.in.h:47 ../rules/evdev.xml.in.h:47 +#: ../rules/base.xml.in.h:47 msgid "Alt+Shift" msgstr "Alt+Shift" -#: ../rules/base.xml.in.h:48 ../rules/evdev.xml.in.h:48 +#: ../rules/base.xml.in.h:48 msgid "Alt+Space" msgstr "Alt+Space" -#: ../rules/base.xml.in.h:49 ../rules/evdev.xml.in.h:49 +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:50 ../rules/evdev.xml.in.h:50 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Alt/Win, klava funkciado" -#: ../rules/base.xml.in.h:51 ../rules/evdev.xml.in.h:51 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "Alternativa" -#: ../rules/base.xml.in.h:52 ../rules/evdev.xml.in.h:52 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "Alternativa Orienta" -#: ../rules/base.xml.in.h:53 ../rules/evdev.xml.in.h:53 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "Alternativa Fonetika" -#: ../rules/base.xml.in.h:54 ../rules/evdev.xml.in.h:54 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "Alternativa internacia (antaÅe us_intl)" -#: ../rules/base.xml.in.h:55 ../rules/evdev.xml.in.h:55 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "Alternava, senpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:56 ../rules/evdev.xml.in.h:56 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "Alternativa, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:57 ../rules/evdev.xml.in.h:57 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "Alternativa, nur latin-9" -#: ../rules/base.xml.in.h:58 ../rules/evdev.xml.in.h:58 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "And" -#: ../rules/base.xml.in.h:59 ../rules/evdev.xml.in.h:59 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Andoro" -#: ../rules/base.xml.in.h:60 ../rules/evdev.xml.in.h:60 +#: ../rules/base.xml.in.h:60 msgid "Any Alt key" msgstr "Iu ajn klavo Alt" -#: ../rules/base.xml.in.h:61 ../rules/evdev.xml.in.h:61 +#: ../rules/base.xml.in.h:61 msgid "Any Win key" msgstr "Iu ajn klavo Win" -#: ../rules/base.xml.in.h:62 ../rules/evdev.xml.in.h:62 +#: ../rules/base.xml.in.h:62 msgid "Any Win key (while pressed)" msgstr "Iu ajn klavo Win (dum premata)" -#: ../rules/base.xml.in.h:63 ../rules/evdev.xml.in.h:63 +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Variaĵo de citilo (')" -#: ../rules/base.xml.in.h:64 ../rules/evdev.xml.in.h:64 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:65 ../rules/evdev.xml.in.h:65 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Apple Laptop" -#: ../rules/base.xml.in.h:66 ../rules/evdev.xml.in.h:66 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ara" -#: ../rules/base.xml.in.h:67 ../rules/evdev.xml.in.h:67 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Araba" -#: ../rules/base.xml.in.h:68 ../rules/evdev.xml.in.h:68 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Arm" -#: ../rules/base.xml.in.h:69 ../rules/evdev.xml.in.h:69 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "Armenujo" -#: ../rules/base.xml.in.h:70 ../rules/evdev.xml.in.h:70 +#: ../rules/base.xml.in.h:70 msgid "Asturian variant with bottom-dot H and bottom-dot L" msgstr "Asturia variaĵo kun subpunktita H kaj subpunktita L" -#: ../rules/base.xml.in.h:71 ../rules/evdev.xml.in.h:71 +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Asus Laptop" -#: ../rules/base.xml.in.h:72 ../rules/evdev.xml.in.h:72 +#: ../rules/base.xml.in.h:72 msgid "At bottom left" msgstr "Malsupre maldekstre" -#: ../rules/base.xml.in.h:73 ../rules/evdev.xml.in.h:73 +#: ../rules/base.xml.in.h:73 msgid "At left of 'A'" msgstr "Maldekstre de 'A'" -#: ../rules/base.xml.in.h:74 ../rules/evdev.xml.in.h:74 +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Aze" -#: ../rules/base.xml.in.h:75 ../rules/evdev.xml.in.h:75 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "AzerbajÄano" -#: ../rules/base.xml.in.h:76 ../rules/evdev.xml.in.h:76 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 sendrata Internet Keyboard" -#: ../rules/base.xml.in.h:77 ../rules/evdev.xml.in.h:77 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:78 ../rules/evdev.xml.in.h:78 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:79 ../rules/evdev.xml.in.h:79 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:80 ../rules/evdev.xml.in.h:80 +#: ../rules/base.xml.in.h:80 msgid "BTC 6301URF" msgstr "BTC 6301URF" -#: ../rules/base.xml.in.h:81 ../rules/evdev.xml.in.h:81 +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:82 ../rules/evdev.xml.in.h:82 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:83 ../rules/evdev.xml.in.h:83 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:84 ../rules/evdev.xml.in.h:84 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:85 ../rules/evdev.xml.in.h:85 +#: ../rules/base.xml.in.h:85 msgid "BTC 9116U Mini Wireless Internet and Gaming" msgstr "BTC 9116U Mini Wireless Internet and Gaming" -#: ../rules/base.xml.in.h:86 ../rules/evdev.xml.in.h:86 +#: ../rules/base.xml.in.h:86 +msgid "Baltic+" +msgstr "Balta+" + +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Ban" -#: ../rules/base.xml.in.h:87 ../rules/evdev.xml.in.h:87 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "BangladeÅo" -#: ../rules/base.xml.in.h:88 ../rules/evdev.xml.in.h:88 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "BaÅkira" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:89 ../rules/evdev.xml.in.h:89 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Belorusujo" -#: ../rules/base.xml.in.h:90 ../rules/evdev.xml.in.h:90 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgujo" -#: ../rules/base.xml.in.h:91 ../rules/evdev.xml.in.h:91 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:92 ../rules/evdev.xml.in.h:92 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:93 ../rules/evdev.xml.in.h:93 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:94 ../rules/evdev.xml.in.h:94 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengala" -#: ../rules/base.xml.in.h:95 ../rules/evdev.xml.in.h:95 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengala Probhat" -#: ../rules/base.xml.in.h:96 ../rules/evdev.xml.in.h:96 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, komforteca, Dvorake" -#: ../rules/base.xml.in.h:97 ../rules/evdev.xml.in.h:97 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, komforteca, Dvorake, nur latin-9" -#: ../rules/base.xml.in.h:98 ../rules/evdev.xml.in.h:98 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:99 ../rules/evdev.xml.in.h:99 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:100 ../rules/evdev.xml.in.h:100 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutano" -#: ../rules/base.xml.in.h:101 ../rules/evdev.xml.in.h:101 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Biblia Hebrea (Tiro)" -#: ../rules/base.xml.in.h:102 ../rules/evdev.xml.in.h:102 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:103 ../rules/evdev.xml.in.h:103 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:104 ../rules/evdev.xml.in.h:104 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnujo kaj Hercegovino" -#: ../rules/base.xml.in.h:105 ../rules/evdev.xml.in.h:105 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "AmbaÅ klavoj Alt kune" -#: ../rules/base.xml.in.h:106 ../rules/evdev.xml.in.h:106 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "AmbaÅ klavoj Ctrl kune" -#: ../rules/base.xml.in.h:107 ../rules/evdev.xml.in.h:107 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "AmbaÅ klavoj Shift kune" -#: ../rules/base.xml.in.h:108 ../rules/evdev.xml.in.h:108 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:109 ../rules/evdev.xml.in.h:109 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Brajla" -#: ../rules/base.xml.in.h:110 ../rules/evdev.xml.in.h:110 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brazilo" -#: ../rules/base.xml.in.h:111 ../rules/evdev.xml.in.h:111 -msgid "Brazilian ABNT2" -msgstr "Brazila ABNT2" - -#: ../rules/base.xml.in.h:112 ../rules/evdev.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretona" -#: ../rules/base.xml.in.h:113 ../rules/evdev.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 ../rules/evdev.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 ../rules/evdev.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 ../rules/evdev.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarujo" -#: ../rules/base.xml.in.h:117 ../rules/evdev.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 ../rules/evdev.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "KamboÄo" -#: ../rules/base.xml.in.h:119 ../rules/evdev.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 ../rules/evdev.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanado" -#: ../rules/base.xml.in.h:121 ../rules/evdev.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 ../rules/evdev.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 ../rules/evdev.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (al la unua aranÄo), Shift+CapsLock (al la lasta aranÄo)" -#: ../rules/base.xml.in.h:124 ../rules/evdev.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (dum premata), Alt+CapsLock restarigas la originalan uskligon" -#: ../rules/base.xml.in.h:125 ../rules/evdev.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "CapsLock funkcias kiel Shift kun Ålosado. Shift \"paÅzas\" CapsLock" -#: ../rules/base.xml.in.h:126 ../rules/evdev.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock funkcias kiel Shift kun Ålosado. Shift ne influas CapsLock" -#: ../rules/base.xml.in.h:127 ../rules/evdev.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock estas malebligita" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Funkciado de la klavo CapsLock" -#: ../rules/base.xml.in.h:128 ../rules/evdev.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock alternigas Shift, influante ĉiujn klavojn" -#: ../rules/base.xml.in.h:129 ../rules/evdev.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock alternigas la ordinaran uskligon de alfabetaj signoj" -#: ../rules/base.xml.in.h:130 ../rules/evdev.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock uzas internan uskligon. Shift \"paÅzas\" CapsLock" -#: ../rules/base.xml.in.h:131 ../rules/evdev.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock uzas internan uskligon. Shift ne influas CapsLock" -#: ../rules/base.xml.in.h:132 ../rules/evdev.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Kataluna variaĵo kun centro-punktita L" -#: ../rules/base.xml.in.h:133 ../rules/evdev.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Subhoketo" -#: ../rules/base.xml.in.h:134 ../rules/evdev.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 ../rules/evdev.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Ĉeroka" -#: ../rules/base.xml.in.h:136 ../rules/evdev.xml.in.h:136 +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:137 ../rules/evdev.xml.in.h:137 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternativa opcio)" -#: ../rules/base.xml.in.h:138 ../rules/evdev.xml.in.h:138 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:139 ../rules/evdev.xml.in.h:139 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:140 ../rules/evdev.xml.in.h:140 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:141 ../rules/evdev.xml.in.h:141 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:142 ../rules/evdev.xml.in.h:142 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:143 ../rules/evdev.xml.in.h:143 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:144 ../rules/evdev.xml.in.h:144 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:145 ../rules/evdev.xml.in.h:145 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:146 ../rules/evdev.xml.in.h:146 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Ĉinujo" -#: ../rules/base.xml.in.h:147 ../rules/evdev.xml.in.h:147 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "ĈuvaÅa" -#: ../rules/base.xml.in.h:148 ../rules/evdev.xml.in.h:148 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "ĈuvaÅa Latine" -#: ../rules/base.xml.in.h:149 ../rules/evdev.xml.in.h:149 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klasike" -#: ../rules/base.xml.in.h:150 ../rules/evdev.xml.in.h:150 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Klasika Dvorako" -#: ../rules/base.xml.in.h:151 ../rules/evdev.xml.in.h:151 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:152 ../rules/evdev.xml.in.h:152 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:153 ../rules/evdev.xml.in.h:153 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:154 ../rules/evdev.xml.in.h:154 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:155 ../rules/evdev.xml.in.h:155 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 klavoj)" -#: ../rules/base.xml.in.h:156 ../rules/evdev.xml.in.h:156 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 klavoj)" -#: ../rules/base.xml.in.h:157 ../rules/evdev.xml.in.h:157 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 klavoj)" -#: ../rules/base.xml.in.h:158 ../rules/evdev.xml.in.h:158 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:159 ../rules/evdev.xml.in.h:159 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Pozicio de la klavo 'Compose'" -#: ../rules/base.xml.in.h:160 ../rules/evdev.xml.in.h:160 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongo, Demokratia Respubliko de" -#: ../rules/base.xml.in.h:161 ../rules/evdev.xml.in.h:161 +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Control + Alt + Backspace" + +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "'Control' estas mapita al klavoj 'Alt', 'Alt' estas mapita al klavoj 'Win'" -#: ../rules/base.xml.in.h:162 ../rules/evdev.xml.in.h:162 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "'Control' estas mapita al klavoj 'Win' (kaj al la kutimaj klavoj 'Ctrl')" -#: ../rules/base.xml.in.h:163 ../rules/evdev.xml.in.h:163 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "Krime-tatara (Dobruca-1 Q)" + +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "Krime-tatara (Dobruca-2 Q)" + +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "Krime-tatara (Turka Alt-Q)" + +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "Krime-tatara (Turka F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "Krime-tatara (Turka Q)" + +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroata" -#: ../rules/base.xml.in.h:164 ../rules/evdev.xml.in.h:164 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Pozicio de la klavo 'Ctrl'" -#: ../rules/base.xml.in.h:165 ../rules/evdev.xml.in.h:165 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:166 ../rules/evdev.xml.in.h:166 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cirila" -#: ../rules/base.xml.in.h:167 ../rules/evdev.xml.in.h:167 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cirila kun angul-citiloj" -#: ../rules/base.xml.in.h:168 ../rules/evdev.xml.in.h:168 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cirila, Z kaj ZHE interÅanÄita" -#: ../rules/base.xml.in.h:169 ../rules/evdev.xml.in.h:169 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:170 ../rules/evdev.xml.in.h:170 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "ĈeÄ¥a" -#: ../rules/base.xml.in.h:171 ../rules/evdev.xml.in.h:171 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:172 ../rules/evdev.xml.in.h:172 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:173 ../rules/evdev.xml.in.h:173 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:174 ../rules/evdev.xml.in.h:174 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "SenpaÅa dekstra korno" -#: ../rules/base.xml.in.h:175 ../rules/evdev.xml.in.h:175 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "SenpaÅa maldekstra korno" -#: ../rules/base.xml.in.h:176 ../rules/evdev.xml.in.h:176 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Implicitaj ciferoj en cifer-klavaro" -#: ../rules/base.xml.in.h:177 ../rules/evdev.xml.in.h:177 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:178 ../rules/evdev.xml.in.h:178 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-klava PC" -#: ../rules/base.xml.in.h:179 ../rules/evdev.xml.in.h:179 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Laptop/notebook Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:180 ../rules/evdev.xml.in.h:180 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Laptop/notebook Precision M series" -#: ../rules/base.xml.in.h:181 ../rules/evdev.xml.in.h:181 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude series laptop" -#: ../rules/base.xml.in.h:182 ../rules/evdev.xml.in.h:182 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:183 ../rules/evdev.xml.in.h:183 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:184 ../rules/evdev.xml.in.h:184 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:185 ../rules/evdev.xml.in.h:185 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keyboard" -#: ../rules/base.xml.in.h:186 ../rules/evdev.xml.in.h:186 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danujo" -#: ../rules/base.xml.in.h:187 ../rules/evdev.xml.in.h:187 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:188 ../rules/evdev.xml.in.h:188 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:189 ../rules/evdev.xml.in.h:189 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 serio" -#: ../rules/base.xml.in.h:190 ../rules/evdev.xml.in.h:190 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorako" -#: ../rules/base.xml.in.h:191 ../rules/evdev.xml.in.h:191 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorako (Interpunkcio de UK)" -#: ../rules/base.xml.in.h:192 ../rules/evdev.xml.in.h:192 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Internacia Dvorako" -#: ../rules/base.xml.in.h:193 ../rules/evdev.xml.in.h:193 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorako, Polaj citiloj ĉe la klavo \"1/!\"" +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Dvorako, Polaj citiloj ĉe klavo 1" -#: ../rules/base.xml.in.h:194 ../rules/evdev.xml.in.h:194 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorako, Polaj citiloj ĉe citila klavo" -#: ../rules/base.xml.in.h:195 ../rules/evdev.xml.in.h:195 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:196 ../rules/evdev.xml.in.h:196 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Orienta" -#: ../rules/base.xml.in.h:197 ../rules/evdev.xml.in.h:197 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:198 ../rules/evdev.xml.in.h:198 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Ebligi kromajn tipografiajn signojn" -#: ../rules/base.xml.in.h:199 ../rules/evdev.xml.in.h:199 +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "Angla" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:200 ../rules/evdev.xml.in.h:200 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enen-klavo en ciferklavaro" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:201 ../rules/evdev.xml.in.h:201 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomia" -#: ../rules/base.xml.in.h:202 ../rules/evdev.xml.in.h:202 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:203 ../rules/evdev.xml.in.h:203 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:204 ../rules/evdev.xml.in.h:204 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:205 ../rules/evdev.xml.in.h:205 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estonujo" -#: ../rules/base.xml.in.h:206 ../rules/evdev.xml.in.h:206 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:207 ../rules/evdev.xml.in.h:207 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopujo" -#: ../rules/base.xml.in.h:208 ../rules/evdev.xml.in.h:208 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Klavaro traktita per 'Evdev'" -#: ../rules/base.xml.in.h:209 ../rules/evdev.xml.in.h:209 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:210 ../rules/evdev.xml.in.h:210 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:211 ../rules/evdev.xml.in.h:211 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Etendite" -#: ../rules/base.xml.in.h:212 ../rules/evdev.xml.in.h:212 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "Etendite - Win-klavoj" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Etendita Malsuprenstreko" -#: ../rules/base.xml.in.h:213 ../rules/evdev.xml.in.h:213 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-litero (F) variaĵo" -#: ../rules/base.xml.in.h:214 ../rules/evdev.xml.in.h:214 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:215 ../rules/evdev.xml.in.h:215 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:216 ../rules/evdev.xml.in.h:216 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Ferooj" -#: ../rules/base.xml.in.h:217 ../rules/evdev.xml.in.h:217 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:218 ../rules/evdev.xml.in.h:218 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finlando" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:221 ../rules/evdev.xml.in.h:221 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Kvar-nivela klavo kun abstraktaj apartigiloj" -#: ../rules/base.xml.in.h:222 ../rules/evdev.xml.in.h:222 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Kvar-nivela klavo kun komo" -#: ../rules/base.xml.in.h:223 ../rules/evdev.xml.in.h:223 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Kvar-nivela klavo kun punkto" -#: ../rules/base.xml.in.h:224 ../rules/evdev.xml.in.h:224 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Kvar-nivela klavo kun punkto, limigite al latin-9" -#: ../rules/base.xml.in.h:225 ../rules/evdev.xml.in.h:225 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Kvar-nivela klavo kun 'momayyez'" -#: ../rules/base.xml.in.h:226 ../rules/evdev.xml.in.h:226 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:227 ../rules/evdev.xml.in.h:227 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Francujo" -#: ../rules/base.xml.in.h:228 ../rules/evdev.xml.in.h:228 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Franca" -#: ../rules/base.xml.in.h:229 ../rules/evdev.xml.in.h:229 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Franca (Macintosh)" -#: ../rules/base.xml.in.h:230 ../rules/evdev.xml.in.h:230 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Franca (malmoderna)" -#: ../rules/base.xml.in.h:231 ../rules/evdev.xml.in.h:231 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Franca Dvorako" -#: ../rules/base.xml.in.h:232 ../rules/evdev.xml.in.h:232 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Franca, senpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:233 ../rules/evdev.xml.in.h:233 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Franca, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:234 ../rules/evdev.xml.in.h:234 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Tekokomputilo Fujitsu-Siemens Computers AMILO" -#: ../rules/base.xml.in.h:235 ../rules/evdev.xml.in.h:235 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fulba" -#: ../rules/base.xml.in.h:236 ../rules/evdev.xml.in.h:236 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:237 ../rules/evdev.xml.in.h:237 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:238 ../rules/evdev.xml.in.h:238 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Äœenerala 101-klava PC" -#: ../rules/base.xml.in.h:239 ../rules/evdev.xml.in.h:239 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Äœenerala 102-klava (Intl) PC" -#: ../rules/base.xml.in.h:240 ../rules/evdev.xml.in.h:240 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Äœenerala 104-klava PC" -#: ../rules/base.xml.in.h:241 ../rules/evdev.xml.in.h:241 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Äœenerala 105-klava (Intl) PC" -#: ../rules/base.xml.in.h:242 ../rules/evdev.xml.in.h:242 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:243 ../rules/evdev.xml.in.h:243 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:244 ../rules/evdev.xml.in.h:244 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:245 ../rules/evdev.xml.in.h:245 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:246 ../rules/evdev.xml.in.h:246 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:247 ../rules/evdev.xml.in.h:247 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Kartvelujo" -#: ../rules/base.xml.in.h:248 ../rules/evdev.xml.in.h:248 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Kartvela" -#: ../rules/base.xml.in.h:249 ../rules/evdev.xml.in.h:249 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Kartvela AZERTY Tskapo" -#: ../rules/base.xml.in.h:250 ../rules/evdev.xml.in.h:250 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Germana (Macintosh)" -#: ../rules/base.xml.in.h:251 ../rules/evdev.xml.in.h:251 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Germana, senpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:252 ../rules/evdev.xml.in.h:252 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Germana, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:253 ../rules/evdev.xml.in.h:253 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Germanujo" -#: ../rules/base.xml.in.h:254 ../rules/evdev.xml.in.h:254 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:255 ../rules/evdev.xml.in.h:255 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ganao" -#: ../rules/base.xml.in.h:256 ../rules/evdev.xml.in.h:256 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:257 ../rules/evdev.xml.in.h:257 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grekujo" -#: ../rules/base.xml.in.h:258 ../rules/evdev.xml.in.h:258 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Grup-alternado en la klavo multipliko/divido" -#: ../rules/base.xml.in.h:259 ../rules/evdev.xml.in.h:259 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:260 ../rules/evdev.xml.in.h:260 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Gvineo" -#: ../rules/base.xml.in.h:261 ../rules/evdev.xml.in.h:261 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "GuÄarata" -#: ../rules/base.xml.in.h:262 ../rules/evdev.xml.in.h:262 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukia" -#: ../rules/base.xml.in.h:263 ../rules/evdev.xml.in.h:263 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukia de Jhelum" -#: ../rules/base.xml.in.h:264 ../rules/evdev.xml.in.h:264 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:265 ../rules/evdev.xml.in.h:265 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:266 ../rules/evdev.xml.in.h:266 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard por Mac" -#: ../rules/base.xml.in.h:267 ../rules/evdev.xml.in.h:267 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "HaÅsa" -#: ../rules/base.xml.in.h:268 ../rules/evdev.xml.in.h:268 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:269 ../rules/evdev.xml.in.h:269 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:270 ../rules/evdev.xml.in.h:270 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:271 ../rules/evdev.xml.in.h:271 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:272 ../rules/evdev.xml.in.h:272 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:273 ../rules/evdev.xml.in.h:273 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:274 ../rules/evdev.xml.in.h:274 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:275 ../rules/evdev.xml.in.h:275 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:276 ../rules/evdev.xml.in.h:276 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:277 ../rules/evdev.xml.in.h:277 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:278 ../rules/evdev.xml.in.h:278 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:279 ../rules/evdev.xml.in.h:279 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Deksesume" -#: ../rules/base.xml.in.h:280 ../rules/evdev.xml.in.h:280 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hinda per Bolnagri" -#: ../rules/base.xml.in.h:281 ../rules/evdev.xml.in.h:281 +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Hinda Wx" + +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofonia" -#: ../rules/base.xml.in.h:282 ../rules/evdev.xml.in.h:282 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:283 ../rules/evdev.xml.in.h:283 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:284 ../rules/evdev.xml.in.h:284 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:285 ../rules/evdev.xml.in.h:285 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hungarujo" -#: ../rules/base.xml.in.h:286 ../rules/evdev.xml.in.h:286 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "'Hyper' estas mapita al la klavoj 'Win'" -#: ../rules/base.xml.in.h:287 ../rules/evdev.xml.in.h:287 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:288 ../rules/evdev.xml.in.h:288 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:289 ../rules/evdev.xml.in.h:289 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:290 ../rules/evdev.xml.in.h:290 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:291 ../rules/evdev.xml.in.h:291 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:292 ../rules/evdev.xml.in.h:292 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:293 ../rules/evdev.xml.in.h:293 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:294 ../rules/evdev.xml.in.h:294 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:295 ../rules/evdev.xml.in.h:295 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "Alternativa ISO" -#: ../rules/base.xml.in.h:296 ../rules/evdev.xml.in.h:296 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islando" -#: ../rules/base.xml.in.h:297 ../rules/evdev.xml.in.h:297 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:298 ../rules/evdev.xml.in.h:298 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Inkluzivi senpaÅan tildon" -#: ../rules/base.xml.in.h:299 ../rules/evdev.xml.in.h:299 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:300 ../rules/evdev.xml.in.h:300 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Bharato" -#: ../rules/base.xml.in.h:301 ../rules/evdev.xml.in.h:301 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internacia (senpaÅaj klavoj per 'AltGr')" -#: ../rules/base.xml.in.h:302 ../rules/evdev.xml.in.h:302 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internacia (senpaÅaj klavoj)" -#: ../rules/base.xml.in.h:303 ../rules/evdev.xml.in.h:303 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuita" -#: ../rules/base.xml.in.h:304 ../rules/evdev.xml.in.h:304 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Irano" -#: ../rules/base.xml.in.h:305 ../rules/evdev.xml.in.h:305 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irako" -#: ../rules/base.xml.in.h:306 ../rules/evdev.xml.in.h:306 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlando" -#: ../rules/base.xml.in.h:307 ../rules/evdev.xml.in.h:307 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:308 ../rules/evdev.xml.in.h:308 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:309 ../rules/evdev.xml.in.h:309 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:310 ../rules/evdev.xml.in.h:310 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:311 ../rules/evdev.xml.in.h:311 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:312 ../rules/evdev.xml.in.h:312 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israelo" -#: ../rules/base.xml.in.h:313 ../rules/evdev.xml.in.h:313 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:314 ../rules/evdev.xml.in.h:314 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italujo" -#: ../rules/base.xml.in.h:315 ../rules/evdev.xml.in.h:315 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Nipono" -#: ../rules/base.xml.in.h:316 ../rules/evdev.xml.in.h:316 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Nipono (Serio PC-98xx)" -#: ../rules/base.xml.in.h:317 ../rules/evdev.xml.in.h:317 -msgid "Japanese 106-key" -msgstr "Nipono 106-klava" - -#: ../rules/base.xml.in.h:318 ../rules/evdev.xml.in.h:318 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Opcioj de nipona klavaro" -#: ../rules/base.xml.in.h:319 ../rules/evdev.xml.in.h:319 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:320 ../rules/evdev.xml.in.h:320 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" -#: ../rules/base.xml.in.h:321 ../rules/evdev.xml.in.h:321 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kanao" -#: ../rules/base.xml.in.h:322 ../rules/evdev.xml.in.h:322 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kanaa klavo 'Lock' Ålosigas" -#: ../rules/base.xml.in.h:323 ../rules/evdev.xml.in.h:323 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kanara" -#: ../rules/base.xml.in.h:324 ../rules/evdev.xml.in.h:324 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "KaÅuba" -#: ../rules/base.xml.in.h:325 ../rules/evdev.xml.in.h:325 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:326 ../rules/evdev.xml.in.h:326 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "KazaÄ¥a kaj Rusa" -#: ../rules/base.xml.in.h:327 ../rules/evdev.xml.in.h:327 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "KazaÄ¥ujo" -#: ../rules/base.xml.in.h:328 ../rules/evdev.xml.in.h:328 +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "Klav-sekvo por formortigi la X-servilon" + +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Klavo por elekti 3-an nivelon" -#: ../rules/base.xml.in.h:329 ../rules/evdev.xml.in.h:329 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Klavo(j) por ÅanÄi la aranÄon" -#: ../rules/base.xml.in.h:330 ../rules/evdev.xml.in.h:330 -msgid "Keypad" -msgstr "Cifer-klavaro" - -#: ../rules/base.xml.in.h:331 ../rules/evdev.xml.in.h:331 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:332 ../rules/evdev.xml.in.h:332 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Kgz" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:333 ../rules/evdev.xml.in.h:333 -msgid "Kir" -msgstr "Kir" - -#: ../rules/base.xml.in.h:334 ../rules/evdev.xml.in.h:334 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komia" -#: ../rules/base.xml.in.h:335 ../rules/evdev.xml.in.h:335 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:336 ../rules/evdev.xml.in.h:336 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Koreujo, Respubliko de" -#: ../rules/base.xml.in.h:337 ../rules/evdev.xml.in.h:337 -msgid "Korean 106-key" -msgstr "Korea 106-klava" - -#: ../rules/base.xml.in.h:338 ../rules/evdev.xml.in.h:338 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:339 ../rules/evdev.xml.in.h:339 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurda, (F)" -#: ../rules/base.xml.in.h:340 ../rules/evdev.xml.in.h:340 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurda, Araba-Latina" -#: ../rules/base.xml.in.h:341 ../rules/evdev.xml.in.h:341 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurda, Latina Alt-Q" -#: ../rules/base.xml.in.h:342 ../rules/evdev.xml.in.h:342 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurda, Lania Q" -#: ../rules/base.xml.in.h:343 ../rules/evdev.xml.in.h:343 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgizujo" -#: ../rules/base.xml.in.h:344 ../rules/evdev.xml.in.h:344 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:345 ../rules/evdev.xml.in.h:345 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:346 ../rules/evdev.xml.in.h:346 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:347 ../rules/evdev.xml.in.h:347 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:348 ../rules/evdev.xml.in.h:348 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laoso" -#: ../rules/base.xml.in.h:349 ../rules/evdev.xml.in.h:349 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" -#: ../rules/base.xml.in.h:350 ../rules/evdev.xml.in.h:350 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" -#: ../rules/base.xml.in.h:351 ../rules/evdev.xml.in.h:351 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Laptop/notebook eMachines m68xx" -#: ../rules/base.xml.in.h:352 ../rules/evdev.xml.in.h:352 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latineca" -#: ../rules/base.xml.in.h:353 ../rules/evdev.xml.in.h:353 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latin-amerika" -#: ../rules/base.xml.in.h:354 ../rules/evdev.xml.in.h:354 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latineca Unikoda" -#: ../rules/base.xml.in.h:355 ../rules/evdev.xml.in.h:355 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latineca Unikoda qwerty" -#: ../rules/base.xml.in.h:356 ../rules/evdev.xml.in.h:356 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latineca qwerty" -#: ../rules/base.xml.in.h:357 ../rules/evdev.xml.in.h:357 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latineca unikoda" -#: ../rules/base.xml.in.h:358 ../rules/evdev.xml.in.h:358 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latineca unikoda qwerty" -#: ../rules/base.xml.in.h:359 ../rules/evdev.xml.in.h:359 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latineca kun angul-citiloj" -#: ../rules/base.xml.in.h:360 ../rules/evdev.xml.in.h:360 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Latvujo" -#: ../rules/base.xml.in.h:361 ../rules/evdev.xml.in.h:361 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:362 ../rules/evdev.xml.in.h:362 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Maldekstra Alt" -#: ../rules/base.xml.in.h:363 ../rules/evdev.xml.in.h:363 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Maldekstra 'Alt' (dum premata)" -#: ../rules/base.xml.in.h:364 ../rules/evdev.xml.in.h:364 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "La maldekstra 'Alt' estas permutita kun la maldekstra klavo 'Win'" -#: ../rules/base.xml.in.h:365 ../rules/evdev.xml.in.h:365 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Maldekstra Ctrl" -#: ../rules/base.xml.in.h:366 ../rules/evdev.xml.in.h:366 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Maldekstra Ctrl+Maldekstra Shift" -#: ../rules/base.xml.in.h:367 ../rules/evdev.xml.in.h:367 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Maldekstra Shift" -#: ../rules/base.xml.in.h:368 ../rules/evdev.xml.in.h:368 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Maldekstra Win" -#: ../rules/base.xml.in.h:369 ../rules/evdev.xml.in.h:369 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Maldekstra Win (al la unua aranÄo), Dekstra Win/Menu (al la lasta aranÄo)" -#: ../rules/base.xml.in.h:370 ../rules/evdev.xml.in.h:370 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Maldekstra Win (dum premata)" -#: ../rules/base.xml.in.h:371 ../rules/evdev.xml.in.h:371 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Maldekstra mano" -#: ../rules/base.xml.in.h:372 ../rules/evdev.xml.in.h:372 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Maldekstreca Dvorako" -#: ../rules/base.xml.in.h:373 ../rules/evdev.xml.in.h:373 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Malmoderna" -#: ../rules/base.xml.in.h:374 ../rules/evdev.xml.in.h:374 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Malmoderna Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:376 ../rules/evdev.xml.in.h:376 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Malmoderna klavo kun komo" -#: ../rules/base.xml.in.h:377 ../rules/evdev.xml.in.h:377 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Malmoderna klavo kun punkto" -#: ../rules/base.xml.in.h:378 ../rules/evdev.xml.in.h:378 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Pli-signo/Malpli-signo" -#: ../rules/base.xml.in.h:379 ../rules/evdev.xml.in.h:379 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litovujo" -#: ../rules/base.xml.in.h:380 ../rules/evdev.xml.in.h:380 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:381 ../rules/evdev.xml.in.h:381 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:382 ../rules/evdev.xml.in.h:382 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternativa opcio)" -#: ../rules/base.xml.in.h:383 ../rules/evdev.xml.in.h:383 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:384 ../rules/evdev.xml.in.h:384 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:385 ../rules/evdev.xml.in.h:385 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:386 ../rules/evdev.xml.in.h:386 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:387 ../rules/evdev.xml.in.h:387 -msgid "Logitech Cordless Desktop Pro (alternate option2)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (alternativa opcio 2)" -#: ../rules/base.xml.in.h:388 ../rules/evdev.xml.in.h:388 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:389 ../rules/evdev.xml.in.h:389 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:390 ../rules/evdev.xml.in.h:390 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 extra keys via G15daemon" -#: ../rules/base.xml.in.h:391 ../rules/evdev.xml.in.h:391 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech - Äœenerala Klavaro" -#: ../rules/base.xml.in.h:392 ../rules/evdev.xml.in.h:392 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:393 ../rules/evdev.xml.in.h:393 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:394 ../rules/evdev.xml.in.h:394 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:395 ../rules/evdev.xml.in.h:395 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:396 ../rules/evdev.xml.in.h:396 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:397 ../rules/evdev.xml.in.h:397 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:398 ../rules/evdev.xml.in.h:398 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:399 ../rules/evdev.xml.in.h:399 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:400 ../rules/evdev.xml.in.h:400 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:401 ../rules/evdev.xml.in.h:401 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (model Y-RB6)" -#: ../rules/base.xml.in.h:402 ../rules/evdev.xml.in.h:402 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:403 ../rules/evdev.xml.in.h:403 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:404 ../rules/evdev.xml.in.h:404 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Malsupra Soraba" -#: ../rules/base.xml.in.h:405 ../rules/evdev.xml.in.h:405 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Malsupra Soraba (qwertz)" -#: ../rules/base.xml.in.h:406 ../rules/evdev.xml.in.h:406 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:407 ../rules/evdev.xml.in.h:407 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:408 ../rules/evdev.xml.in.h:408 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:409 ../rules/evdev.xml.in.h:409 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:410 ../rules/evdev.xml.in.h:410 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:411 ../rules/evdev.xml.in.h:411 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonujo" -#: ../rules/base.xml.in.h:412 ../rules/evdev.xml.in.h:412 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:413 ../rules/evdev.xml.in.h:413 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh 'Malnova'" -#: ../rules/base.xml.in.h:414 ../rules/evdev.xml.in.h:414 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, senpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:415 ../rules/evdev.xml.in.h:415 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:416 ../rules/evdev.xml.in.h:416 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Igi CapsLock kroman Backspace" -#: ../rules/base.xml.in.h:417 ../rules/evdev.xml.in.h:417 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Igi CapsLock kroman Ctrl" -#: ../rules/base.xml.in.h:418 ../rules/evdev.xml.in.h:418 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Igi CapsLock kroman ESC" -#: ../rules/base.xml.in.h:419 ../rules/evdev.xml.in.h:419 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Igi CapsLock kroman Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Igi CapsLock kroman NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Igi CapsLock kroman Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:420 ../rules/evdev.xml.in.h:420 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malajala" -#: ../rules/base.xml.in.h:421 ../rules/evdev.xml.in.h:421 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malajala 'Lalitha'" -#: ../rules/base.xml.in.h:422 ../rules/evdev.xml.in.h:422 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldivoj" -#: ../rules/base.xml.in.h:423 ../rules/evdev.xml.in.h:423 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Maltolando" -#: ../rules/base.xml.in.h:424 ../rules/evdev.xml.in.h:424 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Malta klavaro kun usona aranÄo" -#: ../rules/base.xml.in.h:425 ../rules/evdev.xml.in.h:425 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:426 ../rules/evdev.xml.in.h:426 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maoria" -#: ../rules/base.xml.in.h:427 ../rules/evdev.xml.in.h:427 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:428 ../rules/evdev.xml.in.h:428 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:429 ../rules/evdev.xml.in.h:429 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:430 ../rules/evdev.xml.in.h:430 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:431 ../rules/evdev.xml.in.h:431 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta estas mapita al la Maldekstra Win" -#: ../rules/base.xml.in.h:432 ../rules/evdev.xml.in.h:432 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta estas mapita al la klavoj Win" -#: ../rules/base.xml.in.h:433 ../rules/evdev.xml.in.h:433 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:434 ../rules/evdev.xml.in.h:434 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:435 ../rules/evdev.xml.in.h:435 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Sveda" -#: ../rules/base.xml.in.h:436 ../rules/evdev.xml.in.h:436 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:437 ../rules/evdev.xml.in.h:437 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:438 ../rules/evdev.xml.in.h:438 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:439 ../rules/evdev.xml.in.h:439 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:440 ../rules/evdev.xml.in.h:440 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:441 ../rules/evdev.xml.in.h:441 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:442 ../rules/evdev.xml.in.h:442 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:443 ../rules/evdev.xml.in.h:443 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:444 ../rules/evdev.xml.in.h:444 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Ceteraj kongruaj opcioj" -#: ../rules/base.xml.in.h:445 ../rules/evdev.xml.in.h:445 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:446 ../rules/evdev.xml.in.h:446 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:447 ../rules/evdev.xml.in.h:447 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:448 ../rules/evdev.xml.in.h:448 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:449 ../rules/evdev.xml.in.h:449 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolujo" -#: ../rules/base.xml.in.h:450 ../rules/evdev.xml.in.h:450 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:451 ../rules/evdev.xml.in.h:451 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Maroko" -#: ../rules/base.xml.in.h:452 ../rules/evdev.xml.in.h:452 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Plurlingva" -#: ../rules/base.xml.in.h:453 ../rules/evdev.xml.in.h:453 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Plurlingva, unua parto" -#: ../rules/base.xml.in.h:454 ../rules/evdev.xml.in.h:454 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Plurlingva, dua parto" -#: ../rules/base.xml.in.h:455 ../rules/evdev.xml.in.h:455 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Birmo" -#: ../rules/base.xml.in.h:456 ../rules/evdev.xml.in.h:456 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "RetropaÅo laÅ estilo NICOLA-F" -#: ../rules/base.xml.in.h:457 ../rules/evdev.xml.in.h:457 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:458 ../rules/evdev.xml.in.h:458 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:459 ../rules/evdev.xml.in.h:459 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo por Esperanto" -#: ../rules/base.xml.in.h:460 ../rules/evdev.xml.in.h:460 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo por usonaj klavaroj" -#: ../rules/base.xml.in.h:461 ../rules/evdev.xml.in.h:461 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:462 ../rules/evdev.xml.in.h:462 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:463 ../rules/evdev.xml.in.h:463 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepalo" -#: ../rules/base.xml.in.h:464 ../rules/evdev.xml.in.h:464 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Nederlando" -#: ../rules/base.xml.in.h:465 ../rules/evdev.xml.in.h:465 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Nova fonetika" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:466 ../rules/evdev.xml.in.h:466 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "NiÄerujo" -#: ../rules/base.xml.in.h:467 ../rules/evdev.xml.in.h:467 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:468 ../rules/evdev.xml.in.h:468 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Ne-rompebla spaco-signo ĉe la 4-a nivelo" -#: ../rules/base.xml.in.h:469 ../rules/evdev.xml.in.h:469 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Ne-rompebla spaco-signo ĉe la 4-a nivelo, maldika ne-rompebla spaco-signo ĉe la 6-a nivelo" -#: ../rules/base.xml.in.h:470 ../rules/evdev.xml.in.h:470 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Ne-rompebla spaco-signo ĉe la 4-a nivelo, maldika ne-rompebla spaco-signo ĉe la 6-a nivelo (per Ctrl+Shift)" -#: ../rules/base.xml.in.h:471 ../rules/evdev.xml.in.h:471 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Ne-rompebla spaco-signo ĉe la 2-a nivelo" -#: ../rules/base.xml.in.h:472 ../rules/evdev.xml.in.h:472 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Ne-rompebla spaco-signo ĉe la 3-a nivelo" -#: ../rules/base.xml.in.h:473 ../rules/evdev.xml.in.h:473 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Ne-rompebla spaco-signo ĉe la 3-a nivelo, nenio ĉe la 4-a nivelo" -#: ../rules/base.xml.in.h:474 ../rules/evdev.xml.in.h:474 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Ne-rompebla spaco-signo ĉe la 3-a nivelo, maldika ne-rompebla spaco-signo ĉe la 4-a nivelo" -#: ../rules/base.xml.in.h:475 ../rules/evdev.xml.in.h:475 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:476 ../rules/evdev.xml.in.h:476 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Norda Samea" -#: ../rules/base.xml.in.h:477 ../rules/evdev.xml.in.h:477 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Norda Samea, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:478 ../rules/evdev.xml.in.h:478 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:479 ../rules/evdev.xml.in.h:479 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norvegujo" -#: ../rules/base.xml.in.h:480 ../rules/evdev.xml.in.h:480 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:481 ../rules/evdev.xml.in.h:481 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Funkciado de la forig-klavo de la ciferklavaro" -#: ../rules/base.xml.in.h:482 ../rules/evdev.xml.in.h:482 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "La klavoj de la ciferklavaro funkcias same kiel en Mac" -#: ../rules/base.xml.in.h:483 ../rules/evdev.xml.in.h:483 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Elektado de aranÄo por la ciferklavaro" -#: ../rules/base.xml.in.h:484 ../rules/evdev.xml.in.h:484 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:485 ../rules/evdev.xml.in.h:485 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:486 ../rules/evdev.xml.in.h:486 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Daria" -#: ../rules/base.xml.in.h:487 ../rules/evdev.xml.in.h:487 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC PaÅtoa" -#: ../rules/base.xml.in.h:488 ../rules/evdev.xml.in.h:488 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Suda Uzbekujo" -#: ../rules/base.xml.in.h:489 ../rules/evdev.xml.in.h:489 +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "Okcitana" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogamo" -#: ../rules/base.xml.in.h:490 ../rules/evdev.xml.in.h:490 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogamo IS434" -#: ../rules/base.xml.in.h:491 ../rules/evdev.xml.in.h:491 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Orija" -#: ../rules/base.xml.in.h:492 ../rules/evdev.xml.in.h:492 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:493 ../rules/evdev.xml.in.h:493 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Oseta" -#: ../rules/base.xml.in.h:494 ../rules/evdev.xml.in.h:494 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Oseta, klavoj 'Win'" -#: ../rules/base.xml.in.h:495 ../rules/evdev.xml.in.h:495 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Oseta, malmoderna" -#: ../rules/base.xml.in.h:496 ../rules/evdev.xml.in.h:496 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:497 ../rules/evdev.xml.in.h:497 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:498 ../rules/evdev.xml.in.h:498 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistano" -#: ../rules/base.xml.in.h:499 ../rules/evdev.xml.in.h:499 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "PaÅtoa" -#: ../rules/base.xml.in.h:500 ../rules/evdev.xml.in.h:500 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:501 ../rules/evdev.xml.in.h:501 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persa, kun Persa Ciferklavaro" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetika" -#: ../rules/base.xml.in.h:502 ../rules/evdev.xml.in.h:502 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "Fonetikaj Win-klavoj" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:503 ../rules/evdev.xml.in.h:503 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polujo" -#: ../rules/base.xml.in.h:504 ../rules/evdev.xml.in.h:504 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Plurtona" -#: ../rules/base.xml.in.h:505 ../rules/evdev.xml.in.h:505 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugalujo" -#: ../rules/base.xml.in.h:506 ../rules/evdev.xml.in.h:506 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:507 ../rules/evdev.xml.in.h:507 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:508 ../rules/evdev.xml.in.h:508 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:509 ../rules/evdev.xml.in.h:509 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorako por programistoj" -#: ../rules/base.xml.in.h:510 ../rules/evdev.xml.in.h:510 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:511 ../rules/evdev.xml.in.h:511 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:512 ../rules/evdev.xml.in.h:512 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:513 ../rules/evdev.xml.in.h:513 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Dekstra Alt" -#: ../rules/base.xml.in.h:514 ../rules/evdev.xml.in.h:514 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Dekstra Alt (dum premata)" -#: ../rules/base.xml.in.h:515 ../rules/evdev.xml.in.h:515 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Dekstra Alt neniam elektas la 3-an nivelon" -#: ../rules/base.xml.in.h:516 ../rules/evdev.xml.in.h:516 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Dekstra Alt, Shift+Dekstra Alt estas Multi_Key" -#: ../rules/base.xml.in.h:517 ../rules/evdev.xml.in.h:517 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Dekstra Ctrl" -#: ../rules/base.xml.in.h:518 ../rules/evdev.xml.in.h:518 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Dekstra Ctrl (dum premata)" -#: ../rules/base.xml.in.h:519 ../rules/evdev.xml.in.h:519 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Dekstra Ctrl kiel Dekstran Alt" -#: ../rules/base.xml.in.h:520 ../rules/evdev.xml.in.h:520 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Dekstra Shift" -#: ../rules/base.xml.in.h:521 ../rules/evdev.xml.in.h:521 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Dekstra Win" -#: ../rules/base.xml.in.h:522 ../rules/evdev.xml.in.h:522 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Dekstra Win (dum premata)" -#: ../rules/base.xml.in.h:523 ../rules/evdev.xml.in.h:523 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Dekstra mano" -#: ../rules/base.xml.in.h:524 ../rules/evdev.xml.in.h:524 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dekstreca Dvorako" -#: ../rules/base.xml.in.h:525 ../rules/evdev.xml.in.h:525 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumanujo" -#: ../rules/base.xml.in.h:526 ../rules/evdev.xml.in.h:526 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumana klavaro kun germanaj literoj" -#: ../rules/base.xml.in.h:527 ../rules/evdev.xml.in.h:527 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumana klavaro kun germanaj literoj, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:528 ../rules/evdev.xml.in.h:528 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:529 ../rules/evdev.xml.in.h:529 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:530 ../rules/evdev.xml.in.h:530 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusujo" -#: ../rules/base.xml.in.h:531 ../rules/evdev.xml.in.h:531 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Rusa" -#: ../rules/base.xml.in.h:532 ../rules/evdev.xml.in.h:532 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Rusa fonetika" -#: ../rules/base.xml.in.h:533 ../rules/evdev.xml.in.h:533 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Rusa fonetika Dvorako" -#: ../rules/base.xml.in.h:534 ../rules/evdev.xml.in.h:534 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Rusa fonetika, forigi senpaÅajn klavojn" -#: ../rules/base.xml.in.h:535 ../rules/evdev.xml.in.h:535 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Rusa kun KazaÄ¥a" -#: ../rules/base.xml.in.h:536 ../rules/evdev.xml.in.h:536 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:537 ../rules/evdev.xml.in.h:537 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:538 ../rules/evdev.xml.in.h:538 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:539 ../rules/evdev.xml.in.h:539 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:540 ../rules/evdev.xml.in.h:540 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:541 ../rules/evdev.xml.in.h:541 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:542 ../rules/evdev.xml.in.h:542 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:543 ../rules/evdev.xml.in.h:543 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:544 ../rules/evdev.xml.in.h:544 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:545 ../rules/evdev.xml.in.h:545 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:546 ../rules/evdev.xml.in.h:546 +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Ruluma Baskulo" + +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:547 ../rules/evdev.xml.in.h:547 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:548 ../rules/evdev.xml.in.h:548 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Punkto-komo ĉe la 3-a nivelo" -#: ../rules/base.xml.in.h:549 ../rules/evdev.xml.in.h:549 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbujo" -#: ../rules/base.xml.in.h:550 ../rules/evdev.xml.in.h:550 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift nuligas CapsLock" -#: ../rules/base.xml.in.h:551 ../rules/evdev.xml.in.h:551 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift ne nuligas NumLock, Äi elektigas la 3-a nivelon anstataÅe" -#: ../rules/base.xml.in.h:552 ../rules/evdev.xml.in.h:552 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shift kun la ciferklavaro funkcias same kiel en MS Windows" -#: ../rules/base.xml.in.h:553 ../rules/evdev.xml.in.h:553 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:554 ../rules/evdev.xml.in.h:554 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Simpla" -#: ../rules/base.xml.in.h:555 ../rules/evdev.xml.in.h:555 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakujo" -#: ../rules/base.xml.in.h:556 ../rules/evdev.xml.in.h:556 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenujo" -#: ../rules/base.xml.in.h:557 ../rules/evdev.xml.in.h:557 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Sud-Afriko" -#: ../rules/base.xml.in.h:558 ../rules/evdev.xml.in.h:558 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Suda Uzbekujo" -#: ../rules/base.xml.in.h:559 ../rules/evdev.xml.in.h:559 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Hispanio" -#: ../rules/base.xml.in.h:560 ../rules/evdev.xml.in.h:560 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Specialaj klavoj (Ctrl+Alt+<klavo>) traktotaj en servilo" -#: ../rules/base.xml.in.h:561 ../rules/evdev.xml.in.h:561 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:562 ../rules/evdev.xml.in.h:562 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri-Lanko" -#: ../rules/base.xml.in.h:563 ../rules/evdev.xml.in.h:563 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "LaÅnorma" -#: ../rules/base.xml.in.h:564 ../rules/evdev.xml.in.h:564 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "LaÅnorma (Subhoko)" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:566 ../rules/evdev.xml.in.h:566 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "LaÅnorma RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:568 ../rules/evdev.xml.in.h:568 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "LaÅnorma RSTU en Rusa aranÄo" -#: ../rules/base.xml.in.h:569 ../rules/evdev.xml.in.h:569 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:570 ../rules/evdev.xml.in.h:570 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "SenpaÅaj klavoj de 'Sun'" -#: ../rules/base.xml.in.h:571 ../rules/evdev.xml.in.h:571 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:572 ../rules/evdev.xml.in.h:572 -msgid "Super is mapped to Win keys" -msgstr "'Super' estas mapita al la klavoj Win" - -#: ../rules/base.xml.in.h:573 ../rules/evdev.xml.in.h:573 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:574 ../rules/evdev.xml.in.h:574 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:575 ../rules/evdev.xml.in.h:575 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:576 ../rules/evdev.xml.in.h:576 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Permuti Ctrl kaj CapsLock" -#: ../rules/base.xml.in.h:577 ../rules/evdev.xml.in.h:577 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Permuti ESC kaj CapsLock" -#: ../rules/base.xml.in.h:578 ../rules/evdev.xml.in.h:578 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:579 ../rules/evdev.xml.in.h:579 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Svedujo" -#: ../rules/base.xml.in.h:580 ../rules/evdev.xml.in.h:580 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Svislando" -#: ../rules/base.xml.in.h:581 ../rules/evdev.xml.in.h:581 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tabuleta PC)" -#: ../rules/base.xml.in.h:582 ../rules/evdev.xml.in.h:582 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:583 ../rules/evdev.xml.in.h:583 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Sirio" -#: ../rules/base.xml.in.h:584 ../rules/evdev.xml.in.h:584 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Siria" -#: ../rules/base.xml.in.h:585 ../rules/evdev.xml.in.h:585 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Siria fonetika" -#: ../rules/base.xml.in.h:586 ../rules/evdev.xml.in.h:586 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:587 ../rules/evdev.xml.in.h:587 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "TaÄikujo" -#: ../rules/base.xml.in.h:588 ../rules/evdev.xml.in.h:588 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamila" -#: ../rules/base.xml.in.h:589 ../rules/evdev.xml.in.h:589 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamila TAB Typewriter" -#: ../rules/base.xml.in.h:590 ../rules/evdev.xml.in.h:590 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamila TSCII Typewriter" -#: ../rules/base.xml.in.h:591 ../rules/evdev.xml.in.h:591 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamila Unikodo" -#: ../rules/base.xml.in.h:592 ../rules/evdev.xml.in.h:592 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:593 ../rules/evdev.xml.in.h:593 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatara" -#: ../rules/base.xml.in.h:594 ../rules/evdev.xml.in.h:594 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugua" -#: ../rules/base.xml.in.h:595 ../rules/evdev.xml.in.h:595 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:596 ../rules/evdev.xml.in.h:596 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Tajlando" -#: ../rules/base.xml.in.h:597 ../rules/evdev.xml.in.h:597 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibeta" -#: ../rules/base.xml.in.h:598 ../rules/evdev.xml.in.h:598 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibeta (kun ASCII ciferoj)" -#: ../rules/base.xml.in.h:599 ../rules/evdev.xml.in.h:599 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:600 ../rules/evdev.xml.in.h:600 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh Alternativa" -#: ../rules/base.xml.in.h:601 ../rules/evdev.xml.in.h:601 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh Alternativa Fonetika" -#: ../rules/base.xml.in.h:602 ../rules/evdev.xml.in.h:602 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh Etendita" -#: ../rules/base.xml.in.h:603 ../rules/evdev.xml.in.h:603 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh Etendita Fonetika" -#: ../rules/base.xml.in.h:604 ../rules/evdev.xml.in.h:604 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh Fonetika" -#: ../rules/base.xml.in.h:605 ../rules/evdev.xml.in.h:605 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilda (~) variaĵo" -#: ../rules/base.xml.in.h:606 ../rules/evdev.xml.in.h:606 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:607 ../rules/evdev.xml.in.h:607 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Al la ekvivalenta klavo en Dvoraka klavaro." -#: ../rules/base.xml.in.h:608 ../rules/evdev.xml.in.h:608 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Al la ekvivalenta klavo en klavaro Qwerty." -#: ../rules/base.xml.in.h:609 ../rules/evdev.xml.in.h:609 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:610 ../rules/evdev.xml.in.h:610 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Tradicia fonetika" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:611 ../rules/evdev.xml.in.h:611 +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:612 ../rules/evdev.xml.in.h:612 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:613 ../rules/evdev.xml.in.h:613 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turkujo" -#: ../rules/base.xml.in.h:614 ../rules/evdev.xml.in.h:614 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "Turkmenujo" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "SkribmaÅino" -#: ../rules/base.xml.in.h:615 ../rules/evdev.xml.in.h:615 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "AranÄo UCW (nur diakritaĵoj)" -#: ../rules/base.xml.in.h:616 ../rules/evdev.xml.in.h:616 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Usona klavaro kun bosnaj duliteraĵoj" -#: ../rules/base.xml.in.h:617 ../rules/evdev.xml.in.h:617 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Usona klavaro kun bosnaj literoj" -#: ../rules/base.xml.in.h:618 ../rules/evdev.xml.in.h:618 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Usona klavaro kun kroataj duliteraĵoj" -#: ../rules/base.xml.in.h:619 ../rules/evdev.xml.in.h:619 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Usona klavaro kun kroataj literoj" -#: ../rules/base.xml.in.h:620 ../rules/evdev.xml.in.h:620 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Usona klavaro kun estonaj literoj" -#: ../rules/base.xml.in.h:621 ../rules/evdev.xml.in.h:621 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Usona klavaro kun italaj literoj" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Usona klavaro kun litovaj literoj" -#: ../rules/base.xml.in.h:622 ../rules/evdev.xml.in.h:622 -msgid "US keyboard with Slovenian digraphs" -msgstr "Usona klavaro kun slovenaj duliteraĵoj" - -#: ../rules/base.xml.in.h:623 ../rules/evdev.xml.in.h:623 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Usona klavaro kun slovenaj literoj" -#: ../rules/base.xml.in.h:624 ../rules/evdev.xml.in.h:624 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "Usono" -#: ../rules/base.xml.in.h:625 ../rules/evdev.xml.in.h:625 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurta" -#: ../rules/base.xml.in.h:626 ../rules/evdev.xml.in.h:626 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:627 ../rules/evdev.xml.in.h:627 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukrajnujo" -#: ../rules/base.xml.in.h:628 ../rules/evdev.xml.in.h:628 -msgid "Unicode" -msgstr "Unikodo" - -#: ../rules/base.xml.in.h:629 ../rules/evdev.xml.in.h:629 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unikodaj aldonoj (sagoj kaj operaci-simboloj)" -#: ../rules/base.xml.in.h:630 ../rules/evdev.xml.in.h:630 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unikodaj aldonoj (sagoj kaj operaci-simboloj). Operaci-simboloj en la implicita nivelo." -#: ../rules/base.xml.in.h:631 ../rules/evdev.xml.in.h:631 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:632 ../rules/evdev.xml.in.h:632 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "UnuiÄinta ReÄlando" -#: ../rules/base.xml.in.h:633 ../rules/evdev.xml.in.h:633 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:634 ../rules/evdev.xml.in.h:634 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, Alternativa fonetika" -#: ../rules/base.xml.in.h:635 ../rules/evdev.xml.in.h:635 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, Fonetike" -#: ../rules/base.xml.in.h:636 ../rules/evdev.xml.in.h:636 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Win-klavoj" -#: ../rules/base.xml.in.h:637 ../rules/evdev.xml.in.h:637 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Uzi bosnajn duliteraĵojn" -#: ../rules/base.xml.in.h:638 ../rules/evdev.xml.in.h:638 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Uzi kroatajn duliteraĵojn" -#: ../rules/base.xml.in.h:639 ../rules/evdev.xml.in.h:639 -msgid "Use Slovenian digraphs" -msgstr "Uzi slovenajn duliteraĵojn" - -#: ../rules/base.xml.in.h:640 ../rules/evdev.xml.in.h:640 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Uzi angul-citilojn por citiloj" -#: ../rules/base.xml.in.h:641 ../rules/evdev.xml.in.h:641 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Uzi la LED de klavaro por indiki alternativan aranÄon" -#: ../rules/base.xml.in.h:642 ../rules/evdev.xml.in.h:642 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Uzado de spac-klavo por enmeti ne-rompeblan spaco-signon" -#: ../rules/base.xml.in.h:643 ../rules/evdev.xml.in.h:643 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Kutima spaco-signo ĉe iu ajn nivelo" -#: ../rules/base.xml.in.h:644 ../rules/evdev.xml.in.h:644 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:645 ../rules/evdev.xml.in.h:645 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekujo" -#: ../rules/base.xml.in.h:646 ../rules/evdev.xml.in.h:646 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vjetnamujo" -#: ../rules/base.xml.in.h:647 ../rules/evdev.xml.in.h:647 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:648 ../rules/evdev.xml.in.h:648 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:649 ../rules/evdev.xml.in.h:649 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 ciferklavaro kun unikodaj aldonoj (sagoj kaj operaci-simboloj)" -#: ../rules/base.xml.in.h:650 ../rules/evdev.xml.in.h:650 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 ciferklavaro kun unikodaj aldonoj (sagoj kaj operaci-simboloj). Operaci-simboloj en la implicita nivelo" -#: ../rules/base.xml.in.h:651 ../rules/evdev.xml.in.h:651 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang modelo 724 azerty" -#: ../rules/base.xml.in.h:652 ../rules/evdev.xml.in.h:652 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Okcidenta" -#: ../rules/base.xml.in.h:653 ../rules/evdev.xml.in.h:653 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:654 ../rules/evdev.xml.in.h:654 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-klavoj" -#: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Kun klavo <\\|>" -#: ../rules/base.xml.in.h:656 ../rules/evdev.xml.in.h:656 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Kun EÅroSigno ĉe 5" -#: ../rules/base.xml.in.h:657 ../rules/evdev.xml.in.h:657 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Kun angul-citiloj" -#: ../rules/base.xml.in.h:658 ../rules/evdev.xml.in.h:658 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:659 ../rules/evdev.xml.in.h:659 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" -#: ../rules/base.xml.in.h:660 ../rules/evdev.xml.in.h:660 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Joruba" -#: ../rules/base.xml.in.h:661 ../rules/evdev.xml.in.h:661 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z kaj ZHE permutitaj" -#: ../rules/base.xml.in.h:662 ../rules/evdev.xml.in.h:662 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:663 ../rules/evdev.xml.in.h:663 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:664 ../rules/evdev.xml.in.h:664 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/ciferoj" -#: ../rules/base.xml.in.h:665 ../rules/evdev.xml.in.h:665 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "ciferoj" -#: ../rules/base.xml.in.h:666 ../rules/evdev.xml.in.h:666 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "translokitaj punktokomo kaj citilo (malaktuale)" -#: ../rules/base.xml.in.h:667 ../rules/evdev.xml.in.h:667 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:668 ../rules/evdev.xml.in.h:668 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:669 ../rules/evdev.xml.in.h:669 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, etendita Malsuprenstreko" -#: ../rules/base.xml.in.h:670 ../rules/evdev.xml.in.h:670 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/ciferoj" -#: ../rules/base.xml.in.h:671 ../rules/evdev.xml.in.h:671 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Kunmiksado de diakritaĵoj anstataÅ senpaÅaj klavoj" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internacia (AltGr-Unikodo kunmiksado)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internacia (AltGr-Unikodo kunmiksado, alternativa)" + +#~ msgid "Keypad" +#~ msgstr "Cifer-klavaro" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pro Keypad" + +#~ msgid "Standard Phonetic" +#~ msgstr "LaÅnorma Fonetika" + +#~ msgid "Brazilian ABNT2" +#~ msgstr "Brazila ABNT2" + +#~ msgid "Japanese 106-key" +#~ msgstr "Nipono 106-klava" + +#~ msgid "Kir" +#~ msgstr "Kir" + +#~ msgid "Korean 106-key" +#~ msgstr "Korea 106-klava" + +#~ msgid "Super is mapped to Win keys" +#~ msgstr "'Super' estas mapita al la klavoj Win" + +#~ msgid "US keyboard with Slovenian digraphs" +#~ msgstr "Usona klavaro kun slovenaj duliteraĵoj" + +#~ msgid "Unicode" +#~ msgstr "Unikodo" + +#~ msgid "Use Slovenian digraphs" +#~ msgstr "Uzi slovenajn duliteraĵojn" + #~ msgid "Add the EuroSign to the 2 key." #~ msgstr "Aldoni la EÅroSignon al la klavo 2." @@ -2702,9 +2842,6 @@ msgstr "qwertz" #~ msgid "Alt+Shift change layout." #~ msgstr "Alt+Shift ÅanÄas la aranÄon." -#~ msgid "Baltic+" -#~ msgstr "Balta+" - #~ msgid "CapsLock LED shows alternative layout." #~ msgstr "LED de CapsLock indikas alternativan aranÄon." diff --git a/xorg-server/xkbdata.src/po/fi.po b/xorg-server/xkbdata.src/po/fi.po index ff5be340e..024d4f762 100644 --- a/xorg-server/xkbdata.src/po/fi.po +++ b/xorg-server/xkbdata.src/po/fi.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.5\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-01-13 23:12+0000\n" -"PO-Revision-Date: 2009-01-16 08:05+0200\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 11:26+0300\n" "Last-Translator: Tommi Vainikainen <Tommi.Vainikainen@iki.fi>\n" "Language-Team: Finnish <translation-team-fi@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" @@ -17,2679 +17,2813 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../rules/base.xml.in.h:1 ../rules/evdev.xml.in.h:1 +#: ../rules/base.xml.in.h:1 msgid "(F)" msgstr "(F)" -#: ../rules/base.xml.in.h:2 ../rules/evdev.xml.in.h:2 +#: ../rules/base.xml.in.h:2 msgid "(Legacy) Alternative" msgstr "(Perinteinen) vaihtoehtoinen" -#: ../rules/base.xml.in.h:3 ../rules/evdev.xml.in.h:3 +#: ../rules/base.xml.in.h:3 msgid "(Legacy) Alternative, Sun dead keys" msgstr "(Perinteinen) vaihtoehtoinen, Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:4 ../rules/evdev.xml.in.h:4 +#: ../rules/base.xml.in.h:4 msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(Perinteinen) vaihtoehtoinen, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:5 ../rules/evdev.xml.in.h:5 +#: ../rules/base.xml.in.h:5 msgid "101/104 key Compatible" msgstr "101/104-näppäiminen tai yhteensopiva" -#: ../rules/base.xml.in.h:6 ../rules/evdev.xml.in.h:6 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "101/qwerty/pilkku/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:7 ../rules/evdev.xml.in.h:7 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "101/qwerty/pilkku/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:8 ../rules/evdev.xml.in.h:8 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "101/qwerty/piste/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:9 ../rules/evdev.xml.in.h:9 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "101/qwerty/piste/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:10 ../rules/evdev.xml.in.h:10 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "101/qwertz/pilkku/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:11 ../rules/evdev.xml.in.h:11 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "101/qwertz/pilkku/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:12 ../rules/evdev.xml.in.h:12 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "101/qwertz/piste/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:13 ../rules/evdev.xml.in.h:13 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "101/qwertz/piste/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:14 ../rules/evdev.xml.in.h:14 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "102/qwerty/pilkku/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:15 ../rules/evdev.xml.in.h:15 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "102/qwerty/pilkku/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:16 ../rules/evdev.xml.in.h:16 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "102/qwerty/piste/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:17 ../rules/evdev.xml.in.h:17 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "102/qwerty/piste/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:18 ../rules/evdev.xml.in.h:18 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "102/qwertz/pilkku/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:19 ../rules/evdev.xml.in.h:19 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "102/qwertz/pilkku/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:20 ../rules/evdev.xml.in.h:20 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "102/qwertz/piste/Kuolleet näppäimet" -#: ../rules/base.xml.in.h:21 ../rules/evdev.xml.in.h:21 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "102/qwertz/piste/Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:22 ../rules/evdev.xml.in.h:22 +#: ../rules/base.xml.in.h:22 msgid "2" msgstr "2" -#: ../rules/base.xml.in.h:23 ../rules/evdev.xml.in.h:23 +#: ../rules/base.xml.in.h:23 msgid "4" msgstr "4" -#: ../rules/base.xml.in.h:24 ../rules/evdev.xml.in.h:24 +#: ../rules/base.xml.in.h:24 msgid "5" msgstr "5" -#: ../rules/base.xml.in.h:25 ../rules/evdev.xml.in.h:25 +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:26 ../rules/evdev.xml.in.h:26 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:27 ../rules/evdev.xml.in.h:27 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech-langaton työpöytänäppäimistö RFKB-23" -#: ../rules/base.xml.in.h:28 ../rules/evdev.xml.in.h:28 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI-standardi" -#: ../rules/base.xml.in.h:29 ../rules/evdev.xml.in.h:29 +#: ../rules/base.xml.in.h:29 msgid "ATM/phone-style" -msgstr "" +msgstr "ATM/puhelintyyppi" -#: ../rules/base.xml.in.h:30 ../rules/evdev.xml.in.h:30 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:31 ../rules/evdev.xml.in.h:31 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:32 ../rules/evdev.xml.in.h:32 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:33 ../rules/evdev.xml.in.h:33 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Acer-kannettava" -#: ../rules/base.xml.in.h:34 ../rules/evdev.xml.in.h:34 +#: ../rules/base.xml.in.h:34 msgid "Add the standard behavior to Menu key" msgstr "Lisää standardi toiminta valikkonäppäimeen" # Tulkitsin asiaa pikaisella tutkimuksella siten, että supersigno on # esperantoa ja tarkoittaa noin suunnilleen korkomerkkiä. -#: ../rules/base.xml.in.h:35 ../rules/evdev.xml.in.h:35 +#: ../rules/base.xml.in.h:35 msgid "Adding Esperanto circumflexes (supersigno)" msgstr "Esperanton tarkkeiden lisäys (supersigno)" -#: ../rules/base.xml.in.h:36 ../rules/evdev.xml.in.h:36 +#: ../rules/base.xml.in.h:36 msgid "Adding EuroSign to certain keys" msgstr "Euro-merkin lisäys haluttuun näppäimeen" -#: ../rules/base.xml.in.h:37 ../rules/evdev.xml.in.h:37 +#: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" msgstr "Advance Scorpius KI" -#: ../rules/base.xml.in.h:38 ../rules/evdev.xml.in.h:38 +#: ../rules/base.xml.in.h:38 msgid "Afg" msgstr "Afg" -#: ../rules/base.xml.in.h:39 ../rules/evdev.xml.in.h:39 +#: ../rules/base.xml.in.h:39 msgid "Afghanistan" msgstr "Afganistan" -#: ../rules/base.xml.in.h:40 ../rules/evdev.xml.in.h:40 +#: ../rules/base.xml.in.h:40 msgid "Akan" msgstr "Akan" -#: ../rules/base.xml.in.h:41 ../rules/evdev.xml.in.h:41 +#: ../rules/base.xml.in.h:41 msgid "Alb" msgstr "Alb" -#: ../rules/base.xml.in.h:42 ../rules/evdev.xml.in.h:42 +#: ../rules/base.xml.in.h:42 msgid "Albania" msgstr "Albania" -#: ../rules/base.xml.in.h:43 ../rules/evdev.xml.in.h:43 +#: ../rules/base.xml.in.h:43 msgid "Alt and Meta are on Alt keys" msgstr "Alt ja Meta ovat Alt-näppäimissä" -#: ../rules/base.xml.in.h:44 ../rules/evdev.xml.in.h:44 +#: ../rules/base.xml.in.h:44 msgid "Alt is mapped to Right Win, Super to Menu" msgstr "Alt tulee oikeasta Win-näppäimestä, Super valikkonäppäimestä" -#: ../rules/base.xml.in.h:45 ../rules/evdev.xml.in.h:45 +#: ../rules/base.xml.in.h:45 msgid "Alt+CapsLock" msgstr "Alt+CapsLock" -#: ../rules/base.xml.in.h:46 ../rules/evdev.xml.in.h:46 +#: ../rules/base.xml.in.h:46 msgid "Alt+Ctrl" msgstr "Alt+Ctrl" -#: ../rules/base.xml.in.h:47 ../rules/evdev.xml.in.h:47 +#: ../rules/base.xml.in.h:47 msgid "Alt+Shift" msgstr "Alt+Shift" -#: ../rules/base.xml.in.h:48 ../rules/evdev.xml.in.h:48 +#: ../rules/base.xml.in.h:48 msgid "Alt+Space" msgstr "Alt+Välilyönti" -#: ../rules/base.xml.in.h:49 ../rules/evdev.xml.in.h:49 +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:50 ../rules/evdev.xml.in.h:50 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Alt- ja Win-näppäinten toiminta" -#: ../rules/base.xml.in.h:51 ../rules/evdev.xml.in.h:51 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "Vaihtoehtoinen" -#: ../rules/base.xml.in.h:52 ../rules/evdev.xml.in.h:52 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "Vaihtoehtoinen itäinen" -#: ../rules/base.xml.in.h:53 ../rules/evdev.xml.in.h:53 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "Vaihtoehtoinen foneettinen" -#: ../rules/base.xml.in.h:54 ../rules/evdev.xml.in.h:54 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "Vaihtoehtoinen kansainvälinen (aiempi us_intl)" -#: ../rules/base.xml.in.h:55 ../rules/evdev.xml.in.h:55 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "Vaihtoehtoinen, Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:56 ../rules/evdev.xml.in.h:56 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "Vaihtoehtoinen, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:57 ../rules/evdev.xml.in.h:57 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "Vaihtoehtoinen, vain latin-9" -#: ../rules/base.xml.in.h:58 ../rules/evdev.xml.in.h:58 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "And" -#: ../rules/base.xml.in.h:59 ../rules/evdev.xml.in.h:59 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Andorra" -#: ../rules/base.xml.in.h:60 ../rules/evdev.xml.in.h:60 +#: ../rules/base.xml.in.h:60 msgid "Any Alt key" msgstr "Mikä tahansa Alt-näppäin" -#: ../rules/base.xml.in.h:61 ../rules/evdev.xml.in.h:61 +#: ../rules/base.xml.in.h:61 msgid "Any Win key" msgstr "Mikä tahansa Win-näppäin" -#: ../rules/base.xml.in.h:62 ../rules/evdev.xml.in.h:62 +#: ../rules/base.xml.in.h:62 msgid "Any Win key (while pressed)" msgstr "Mikä tahansa Win-näppäin (painettaessa)" -#: ../rules/base.xml.in.h:63 ../rules/evdev.xml.in.h:63 +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Heittomerkkimuunnos (')" -#: ../rules/base.xml.in.h:64 ../rules/evdev.xml.in.h:64 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:65 ../rules/evdev.xml.in.h:65 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Apple-kannettava" -#: ../rules/base.xml.in.h:66 ../rules/evdev.xml.in.h:66 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ara" -#: ../rules/base.xml.in.h:67 ../rules/evdev.xml.in.h:67 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Arabia" -#: ../rules/base.xml.in.h:68 ../rules/evdev.xml.in.h:68 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Arm" -#: ../rules/base.xml.in.h:69 ../rules/evdev.xml.in.h:69 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "Armenia" -#: ../rules/base.xml.in.h:70 ../rules/evdev.xml.in.h:70 +#: ../rules/base.xml.in.h:70 msgid "Asturian variant with bottom-dot H and bottom-dot L" msgstr "Asturia-vaihtoehto keskipilkullisella H-kirjaimella ja alapilkullisella L-kirjaimella" -#: ../rules/base.xml.in.h:71 ../rules/evdev.xml.in.h:71 +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Asus-kannettava" -#: ../rules/base.xml.in.h:72 ../rules/evdev.xml.in.h:72 +#: ../rules/base.xml.in.h:72 msgid "At bottom left" msgstr "Alhaalla vasemmalla" -#: ../rules/base.xml.in.h:73 ../rules/evdev.xml.in.h:73 +#: ../rules/base.xml.in.h:73 msgid "At left of 'A'" msgstr "\"A\"-näppäimestä vasemmalla" -#: ../rules/base.xml.in.h:74 ../rules/evdev.xml.in.h:74 +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Aze" -#: ../rules/base.xml.in.h:75 ../rules/evdev.xml.in.h:75 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Azerbaidzan" -#: ../rules/base.xml.in.h:76 ../rules/evdev.xml.in.h:76 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 -langaton Internet-näppäimistö" -#: ../rules/base.xml.in.h:77 ../rules/evdev.xml.in.h:77 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:78 ../rules/evdev.xml.in.h:78 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:79 ../rules/evdev.xml.in.h:79 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:80 ../rules/evdev.xml.in.h:80 +#: ../rules/base.xml.in.h:80 msgid "BTC 6301URF" msgstr "BTC 6301URF" -#: ../rules/base.xml.in.h:81 ../rules/evdev.xml.in.h:81 +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:82 ../rules/evdev.xml.in.h:82 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:83 ../rules/evdev.xml.in.h:83 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:84 ../rules/evdev.xml.in.h:84 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:85 ../rules/evdev.xml.in.h:85 +#: ../rules/base.xml.in.h:85 msgid "BTC 9116U Mini Wireless Internet and Gaming" msgstr "BTC 9116U Mini Wireless Internet and Gaming" -#: ../rules/base.xml.in.h:86 ../rules/evdev.xml.in.h:86 +#: ../rules/base.xml.in.h:86 +msgid "Baltic+" +msgstr "Baltic+" + +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Ban" -#: ../rules/base.xml.in.h:87 ../rules/evdev.xml.in.h:87 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Bangladesh" -#: ../rules/base.xml.in.h:88 ../rules/evdev.xml.in.h:88 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "baÅ¡kiiri" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:89 ../rules/evdev.xml.in.h:89 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Valko-Venäjä" -#: ../rules/base.xml.in.h:90 ../rules/evdev.xml.in.h:90 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgia" -#: ../rules/base.xml.in.h:91 ../rules/evdev.xml.in.h:91 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:92 ../rules/evdev.xml.in.h:92 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:93 ../rules/evdev.xml.in.h:93 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:94 ../rules/evdev.xml.in.h:94 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengali" -#: ../rules/base.xml.in.h:95 ../rules/evdev.xml.in.h:95 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali probhat" -#: ../rules/base.xml.in.h:96 ../rules/evdev.xml.in.h:96 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonominen, Dvorak-tavalla" -#: ../rules/base.xml.in.h:97 ../rules/evdev.xml.in.h:97 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonominen, Dvorak-tavalla, pelkkä latin-9" -#: ../rules/base.xml.in.h:98 ../rules/evdev.xml.in.h:98 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:99 ../rules/evdev.xml.in.h:99 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:100 ../rules/evdev.xml.in.h:100 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:101 ../rules/evdev.xml.in.h:101 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Raamatullinen Heprea (Tiro)" -#: ../rules/base.xml.in.h:102 ../rules/evdev.xml.in.h:102 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:103 ../rules/evdev.xml.in.h:103 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:104 ../rules/evdev.xml.in.h:104 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnia-Hertsegovina" -#: ../rules/base.xml.in.h:105 ../rules/evdev.xml.in.h:105 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Molemmat Alt-näppäimet" -#: ../rules/base.xml.in.h:106 ../rules/evdev.xml.in.h:106 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Molemmat Ctrl-näppäimet" -#: ../rules/base.xml.in.h:107 ../rules/evdev.xml.in.h:107 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Molemmat Shift-näppäimet" -#: ../rules/base.xml.in.h:108 ../rules/evdev.xml.in.h:108 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:109 ../rules/evdev.xml.in.h:109 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:110 ../rules/evdev.xml.in.h:110 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasilia" -#: ../rules/base.xml.in.h:111 ../rules/evdev.xml.in.h:111 -msgid "Brazilian ABNT2" -msgstr "Brasilialainen ABNT2" - -#: ../rules/base.xml.in.h:112 ../rules/evdev.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretoni" -#: ../rules/base.xml.in.h:113 ../rules/evdev.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 ../rules/evdev.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother-Internet-näppäimistö" -#: ../rules/base.xml.in.h:115 ../rules/evdev.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 ../rules/evdev.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgaria" -#: ../rules/base.xml.in.h:117 ../rules/evdev.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 ../rules/evdev.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kambodža" -#: ../rules/base.xml.in.h:119 ../rules/evdev.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 ../rules/evdev.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 ../rules/evdev.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 ../rules/evdev.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 ../rules/evdev.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (ensimmäiselle tasolle), Shift+CapsLock (viimeiselle tasolle)" -#: ../rules/base.xml.in.h:124 ../rules/evdev.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (painettaessa), Alt+CapsLock tekee normaalin CapsLock-toiminnon" -#: ../rules/base.xml.in.h:125 ../rules/evdev.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "CapsLock toimii lukitsevana Shiftinä. Shift kumoaa CapsLockin" -#: ../rules/base.xml.in.h:126 ../rules/evdev.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock toimii lukitsevana Shiftinä. Shift ei kumoa CapsLockia" -#: ../rules/base.xml.in.h:127 ../rules/evdev.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "Caps Lock ei käytössä" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "CapsLock-näppäimen toiminta" -#: ../rules/base.xml.in.h:128 ../rules/evdev.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock vaihtaa Shiftiä vaikuttaen kaikkiin näppäimiin" -#: ../rules/base.xml.in.h:129 ../rules/evdev.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock vaihtaa normaalin suuraakkostuksen aakkosille" -#: ../rules/base.xml.in.h:130 ../rules/evdev.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock käyttää sisäistä suuraakkostusta. Shift kumoaa CapsLockin" -#: ../rules/base.xml.in.h:131 ../rules/evdev.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock käyttää sisäistä suuraakkostusta. Shift ei kumoa CapsLockia" -#: ../rules/base.xml.in.h:132 ../rules/evdev.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalaani-vaihtoehto keskipilkullisella L-kirjaimella" -#: ../rules/base.xml.in.h:133 ../rules/evdev.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Sedilji" -#: ../rules/base.xml.in.h:134 ../rules/evdev.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 ../rules/evdev.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 ../rules/evdev.xml.in.h:136 +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:137 ../rules/evdev.xml.in.h:137 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (vaihtoehtoinen valinta)" -#: ../rules/base.xml.in.h:138 ../rules/evdev.xml.in.h:138 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:139 ../rules/evdev.xml.in.h:139 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:140 ../rules/evdev.xml.in.h:140 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:141 ../rules/evdev.xml.in.h:141 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:142 ../rules/evdev.xml.in.h:142 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony-Internet-näppäimistö" -#: ../rules/base.xml.in.h:143 ../rules/evdev.xml.in.h:143 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:144 ../rules/evdev.xml.in.h:144 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:145 ../rules/evdev.xml.in.h:145 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:146 ../rules/evdev.xml.in.h:146 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Kiina" -#: ../rules/base.xml.in.h:147 ../rules/evdev.xml.in.h:147 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chuvash" -#: ../rules/base.xml.in.h:148 ../rules/evdev.xml.in.h:148 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chuvash latinalainen" -#: ../rules/base.xml.in.h:149 ../rules/evdev.xml.in.h:149 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Perinteinen" -#: ../rules/base.xml.in.h:150 ../rules/evdev.xml.in.h:150 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Perinteinen dvorak" -#: ../rules/base.xml.in.h:151 ../rules/evdev.xml.in.h:151 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:152 ../rules/evdev.xml.in.h:152 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:153 ../rules/evdev.xml.in.h:153 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:154 ../rules/evdev.xml.in.h:154 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access -näppäimistö" -#: ../rules/base.xml.in.h:155 ../rules/evdev.xml.in.h:155 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq-Internet-näppäimistö (13 näppäintä)" -#: ../rules/base.xml.in.h:156 ../rules/evdev.xml.in.h:156 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq-Internet-näppäimistö (18 näppäintä)" -#: ../rules/base.xml.in.h:157 ../rules/evdev.xml.in.h:157 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq-Internet-näppäimistö (7 näppäintä)" -#: ../rules/base.xml.in.h:158 ../rules/evdev.xml.in.h:158 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq-näppäimistö" -#: ../rules/base.xml.in.h:159 ../rules/evdev.xml.in.h:159 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Compose-näppäimen sijainti" -#: ../rules/base.xml.in.h:160 ../rules/evdev.xml.in.h:160 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongon tasavalta" -#: ../rules/base.xml.in.h:161 ../rules/evdev.xml.in.h:161 +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Control + Alt + Backspace" + +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Contol on liitetty Alt-näppäimiin, Alt Win-näppäimiin" -#: ../rules/base.xml.in.h:162 ../rules/evdev.xml.in.h:162 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Contol on liitetty Win-näppäimiin (ja tavalliset Ctrl-näppämet)" -#: ../rules/base.xml.in.h:163 ../rules/evdev.xml.in.h:163 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "Krimintataari (Dobruca-1 Q)" + +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "Krimintataari (Dobruca-2 Q)" + +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "Krimintataari (turkkilainen Alt-Q)" + +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "Krimintataari (turkkilainen F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "Krimintataari (turkkilainen Q)" + +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroatia" -#: ../rules/base.xml.in.h:164 ../rules/evdev.xml.in.h:164 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Ctrl-näppäimen sijainti" -#: ../rules/base.xml.in.h:165 ../rules/evdev.xml.in.h:165 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:166 ../rules/evdev.xml.in.h:166 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Kyrillinen" -#: ../rules/base.xml.in.h:167 ../rules/evdev.xml.in.h:167 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Kyrillinen guillemot-lainausmerkeillä" -#: ../rules/base.xml.in.h:168 ../rules/evdev.xml.in.h:168 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Kyrillinen, Z ja ZHE vaihdettu" -#: ../rules/base.xml.in.h:169 ../rules/evdev.xml.in.h:169 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:170 ../rules/evdev.xml.in.h:170 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "TÅ¡ekki" -#: ../rules/base.xml.in.h:171 ../rules/evdev.xml.in.h:171 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:172 ../rules/evdev.xml.in.h:172 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:173 ../rules/evdev.xml.in.h:173 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:174 ../rules/evdev.xml.in.h:174 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Kuollut akuutti" -#: ../rules/base.xml.in.h:175 ../rules/evdev.xml.in.h:175 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Kuollut gravis" -#: ../rules/base.xml.in.h:176 ../rules/evdev.xml.in.h:176 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Oletussormionäppäimet" -#: ../rules/base.xml.in.h:177 ../rules/evdev.xml.in.h:177 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:178 ../rules/evdev.xml.in.h:178 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-näppäiminen PC" -#: ../rules/base.xml.in.h:179 ../rules/evdev.xml.in.h:179 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Kannettava Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:180 ../rules/evdev.xml.in.h:180 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Kannettava Dell Precision M -sarja" -#: ../rules/base.xml.in.h:181 ../rules/evdev.xml.in.h:181 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Kannettava Dell Latitude-sarja" -#: ../rules/base.xml.in.h:182 ../rules/evdev.xml.in.h:182 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:183 ../rules/evdev.xml.in.h:183 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:184 ../rules/evdev.xml.in.h:184 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:185 ../rules/evdev.xml.in.h:185 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB -multimedianäppäimistö" -#: ../rules/base.xml.in.h:186 ../rules/evdev.xml.in.h:186 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Tanska" -#: ../rules/base.xml.in.h:187 ../rules/evdev.xml.in.h:187 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:188 ../rules/evdev.xml.in.h:188 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa-langaton työpöytänäppäimistö" -#: ../rules/base.xml.in.h:189 ../rules/evdev.xml.in.h:189 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801/9802-sarja" -#: ../rules/base.xml.in.h:190 ../rules/evdev.xml.in.h:190 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:191 ../rules/evdev.xml.in.h:191 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (UK-pilkutus)" -#: ../rules/base.xml.in.h:192 ../rules/evdev.xml.in.h:192 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak kansainvälinen" -#: ../rules/base.xml.in.h:193 ../rules/evdev.xml.in.h:193 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorak, puolalaiset lainausmerkit \"1/!\"-näppäimistä" +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Dvorak, puolalaiset lainausmerkit \"1\"-näppäimistä" -#: ../rules/base.xml.in.h:194 ../rules/evdev.xml.in.h:194 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, puolalaiset lainausmerkit lainausmerkkinäppäimestä" -#: ../rules/base.xml.in.h:195 ../rules/evdev.xml.in.h:195 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:196 ../rules/evdev.xml.in.h:196 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Itäinen" -#: ../rules/base.xml.in.h:197 ../rules/evdev.xml.in.h:197 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:198 ../rules/evdev.xml.in.h:198 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Ota käyttöön ylimääräiset typografiset merkit" -#: ../rules/base.xml.in.h:199 ../rules/evdev.xml.in.h:199 +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "englanti" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:200 ../rules/evdev.xml.in.h:200 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enter sormiossa" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:201 ../rules/evdev.xml.in.h:201 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "ergonominen" -#: ../rules/base.xml.in.h:202 ../rules/evdev.xml.in.h:202 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:203 ../rules/evdev.xml.in.h:203 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:204 ../rules/evdev.xml.in.h:204 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:205 ../rules/evdev.xml.in.h:205 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Viro" -#: ../rules/base.xml.in.h:206 ../rules/evdev.xml.in.h:206 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:207 ../rules/evdev.xml.in.h:207 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopia" -#: ../rules/base.xml.in.h:208 ../rules/evdev.xml.in.h:208 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-hallittu näppäimistö" -#: ../rules/base.xml.in.h:209 ../rules/evdev.xml.in.h:209 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:210 ../rules/evdev.xml.in.h:210 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:211 ../rules/evdev.xml.in.h:211 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Laajennettu" -#: ../rules/base.xml.in.h:212 ../rules/evdev.xml.in.h:212 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "Laajennettu - Win-näppäimet" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Laajennettu kenoviiva" -#: ../rules/base.xml.in.h:213 ../rules/evdev.xml.in.h:213 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-kirjainmuunnos (F)" -#: ../rules/base.xml.in.h:214 ../rules/evdev.xml.in.h:214 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:215 ../rules/evdev.xml.in.h:215 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:216 ../rules/evdev.xml.in.h:216 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Färsaaret" -#: ../rules/base.xml.in.h:217 ../rules/evdev.xml.in.h:217 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:218 ../rules/evdev.xml.in.h:218 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Suomi" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:221 ../rules/evdev.xml.in.h:221 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" -msgstr "" +msgstr "Neljännen tason näppäin abstrakteilla erottimilla" -#: ../rules/base.xml.in.h:222 ../rules/evdev.xml.in.h:222 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" -msgstr "" +msgstr "Neljännen tason näppäin pilkulla" -#: ../rules/base.xml.in.h:223 ../rules/evdev.xml.in.h:223 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" -msgstr "" +msgstr "Neljännen tason näppäin pisteellä" -#: ../rules/base.xml.in.h:224 ../rules/evdev.xml.in.h:224 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" -msgstr "" +msgstr "Neljännen tason näppäin pisteellä, latin-9-rajoituksella" -#: ../rules/base.xml.in.h:225 ../rules/evdev.xml.in.h:225 +# Wikipediasta katsoin, että momayyez on persialainen desimaalierotin, joka näyttää kauttaviivalta +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" -msgstr "" +msgstr "Neljännen tason näppäin persialaisella desimaalierottimella (momayyez)" -#: ../rules/base.xml.in.h:226 ../rules/evdev.xml.in.h:226 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:227 ../rules/evdev.xml.in.h:227 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Ranska" -#: ../rules/base.xml.in.h:228 ../rules/evdev.xml.in.h:228 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Ranskalainen" -#: ../rules/base.xml.in.h:229 ../rules/evdev.xml.in.h:229 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Ranskalainen (Macintosh)" -#: ../rules/base.xml.in.h:230 ../rules/evdev.xml.in.h:230 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Ranskalainen (vanha)" -#: ../rules/base.xml.in.h:231 ../rules/evdev.xml.in.h:231 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Ranskalainen dvorak" -#: ../rules/base.xml.in.h:232 ../rules/evdev.xml.in.h:232 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Ranskalainen, Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:233 ../rules/evdev.xml.in.h:233 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Ranskalainen, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:234 ../rules/evdev.xml.in.h:234 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO-kannettava" -#: ../rules/base.xml.in.h:235 ../rules/evdev.xml.in.h:235 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:236 ../rules/evdev.xml.in.h:236 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:237 ../rules/evdev.xml.in.h:237 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:238 ../rules/evdev.xml.in.h:238 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Yleinen 101-näppäiminen PC" -#: ../rules/base.xml.in.h:239 ../rules/evdev.xml.in.h:239 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Yleinen 102-näppäiminen (kansainvälinen) PC" -#: ../rules/base.xml.in.h:240 ../rules/evdev.xml.in.h:240 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Yleinen 104-näppäiminen PC" -#: ../rules/base.xml.in.h:241 ../rules/evdev.xml.in.h:241 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Yleinen 105-näppäiminen (kansainvälinen) PC" -#: ../rules/base.xml.in.h:242 ../rules/evdev.xml.in.h:242 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-21e" -#: ../rules/base.xml.in.h:243 ../rules/evdev.xml.in.h:243 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM-näppäimistö KWD-910" -#: ../rules/base.xml.in.h:244 ../rules/evdev.xml.in.h:244 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-rulla" -#: ../rules/base.xml.in.h:245 ../rules/evdev.xml.in.h:245 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:246 ../rules/evdev.xml.in.h:246 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:247 ../rules/evdev.xml.in.h:247 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgia" -#: ../rules/base.xml.in.h:248 ../rules/evdev.xml.in.h:248 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgia" -#: ../rules/base.xml.in.h:249 ../rules/evdev.xml.in.h:249 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgian AZERTY Tskapo" -#: ../rules/base.xml.in.h:250 ../rules/evdev.xml.in.h:250 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Saksalainen (Macintosh)" -#: ../rules/base.xml.in.h:251 ../rules/evdev.xml.in.h:251 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Saksalainen, Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:252 ../rules/evdev.xml.in.h:252 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Saksalainen, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:253 ../rules/evdev.xml.in.h:253 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Saksa" -#: ../rules/base.xml.in.h:254 ../rules/evdev.xml.in.h:254 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:255 ../rules/evdev.xml.in.h:255 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:256 ../rules/evdev.xml.in.h:256 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:257 ../rules/evdev.xml.in.h:257 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Kreikka" -#: ../rules/base.xml.in.h:258 ../rules/evdev.xml.in.h:258 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" -msgstr "" +msgstr "Ryhmän vaihto kerto/jako-näppäimellä" -#: ../rules/base.xml.in.h:259 ../rules/evdev.xml.in.h:259 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:260 ../rules/evdev.xml.in.h:260 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:261 ../rules/evdev.xml.in.h:261 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:262 ../rules/evdev.xml.in.h:262 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:263 ../rules/evdev.xml.in.h:263 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" # Lienee tuotemerkki -#: ../rules/base.xml.in.h:264 ../rules/evdev.xml.in.h:264 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:265 ../rules/evdev.xml.in.h:265 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking -näppäimistö" -#: ../rules/base.xml.in.h:266 ../rules/evdev.xml.in.h:266 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking -näppäimistö, Mac-versio" -#: ../rules/base.xml.in.h:267 ../rules/evdev.xml.in.h:267 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:268 ../rules/evdev.xml.in.h:268 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard-Internet-näppäimistö" -#: ../rules/base.xml.in.h:269 ../rules/evdev.xml.in.h:269 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:270 ../rules/evdev.xml.in.h:270 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:271 ../rules/evdev.xml.in.h:271 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:272 ../rules/evdev.xml.in.h:272 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:273 ../rules/evdev.xml.in.h:273 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:274 ../rules/evdev.xml.in.h:274 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:275 ../rules/evdev.xml.in.h:275 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:276 ../rules/evdev.xml.in.h:276 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:277 ../rules/evdev.xml.in.h:277 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x-multimedianäppäimistö" -#: ../rules/base.xml.in.h:278 ../rules/evdev.xml.in.h:278 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:279 ../rules/evdev.xml.in.h:279 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Heksadesimaali" -#: ../rules/base.xml.in.h:280 ../rules/evdev.xml.in.h:280 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:281 ../rules/evdev.xml.in.h:281 +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Hindi Wx" + +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofoninen" -#: ../rules/base.xml.in.h:282 ../rules/evdev.xml.in.h:282 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:283 ../rules/evdev.xml.in.h:283 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:284 ../rules/evdev.xml.in.h:284 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:285 ../rules/evdev.xml.in.h:285 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Unkari" -#: ../rules/base.xml.in.h:286 ../rules/evdev.xml.in.h:286 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper tulee Win-näppäimistä" -#: ../rules/base.xml.in.h:287 ../rules/evdev.xml.in.h:287 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IMB (LST 1205-92)" -#: ../rules/base.xml.in.h:288 ../rules/evdev.xml.in.h:288 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:289 ../rules/evdev.xml.in.h:289 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:290 ../rules/evdev.xml.in.h:290 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:291 ../rules/evdev.xml.in.h:291 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:292 ../rules/evdev.xml.in.h:292 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, kansainvälinen" -#: ../rules/base.xml.in.h:293 ../rules/evdev.xml.in.h:293 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:294 ../rules/evdev.xml.in.h:294 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:295 ../rules/evdev.xml.in.h:295 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO vaihtoehtoinen" -#: ../rules/base.xml.in.h:296 ../rules/evdev.xml.in.h:296 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islanti" -#: ../rules/base.xml.in.h:297 ../rules/evdev.xml.in.h:297 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:298 ../rules/evdev.xml.in.h:298 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Sisällytä kuollut tilde" -#: ../rules/base.xml.in.h:299 ../rules/evdev.xml.in.h:299 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:300 ../rules/evdev.xml.in.h:300 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Intia" -#: ../rules/base.xml.in.h:301 ../rules/evdev.xml.in.h:301 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Kansainvälinen (AltGr -kuolleet näppäimet)" -#: ../rules/base.xml.in.h:302 ../rules/evdev.xml.in.h:302 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Kansainvälinen (ilman kuolleita näppäimiä)" -#: ../rules/base.xml.in.h:303 ../rules/evdev.xml.in.h:303 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:304 ../rules/evdev.xml.in.h:304 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:305 ../rules/evdev.xml.in.h:305 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:306 ../rules/evdev.xml.in.h:306 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlanti" -#: ../rules/base.xml.in.h:307 ../rules/evdev.xml.in.h:307 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:308 ../rules/evdev.xml.in.h:308 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:309 ../rules/evdev.xml.in.h:309 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:310 ../rules/evdev.xml.in.h:310 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:311 ../rules/evdev.xml.in.h:311 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:312 ../rules/evdev.xml.in.h:312 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:313 ../rules/evdev.xml.in.h:313 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:314 ../rules/evdev.xml.in.h:314 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italia" -#: ../rules/base.xml.in.h:315 ../rules/evdev.xml.in.h:315 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japani" -#: ../rules/base.xml.in.h:316 ../rules/evdev.xml.in.h:316 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japani (PC-98xx-sarja)" -#: ../rules/base.xml.in.h:317 ../rules/evdev.xml.in.h:317 -msgid "Japanese 106-key" -msgstr "Japanilainen 106-näppäiminen" - -#: ../rules/base.xml.in.h:318 ../rules/evdev.xml.in.h:318 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "japanilaisen näppäimistön valinnat" -#: ../rules/base.xml.in.h:319 ../rules/evdev.xml.in.h:319 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:320 ../rules/evdev.xml.in.h:320 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" -msgstr "" +msgstr "kalmukki" -#: ../rules/base.xml.in.h:321 ../rules/evdev.xml.in.h:321 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:322 ../rules/evdev.xml.in.h:322 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana, lukitusnäppäin lukitseva" -#: ../rules/base.xml.in.h:323 ../rules/evdev.xml.in.h:323 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:324 ../rules/evdev.xml.in.h:324 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kashubia" -#: ../rules/base.xml.in.h:325 ../rules/evdev.xml.in.h:325 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:326 ../rules/evdev.xml.in.h:326 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakstan venäjän kanssa" -#: ../rules/base.xml.in.h:327 ../rules/evdev.xml.in.h:327 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakstan" -#: ../rules/base.xml.in.h:328 ../rules/evdev.xml.in.h:328 +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "Näppäinyhdistelmä, joka tappaa X-palvelimen" + +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Kolmannen tason valintanäppäin" -#: ../rules/base.xml.in.h:329 ../rules/evdev.xml.in.h:329 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Asettelunvaihtonäppäimet" -#: ../rules/base.xml.in.h:330 ../rules/evdev.xml.in.h:330 -msgid "Keypad" -msgstr "Sormio" - -#: ../rules/base.xml.in.h:331 ../rules/evdev.xml.in.h:331 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:332 ../rules/evdev.xml.in.h:332 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Kgz" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:333 ../rules/evdev.xml.in.h:333 -msgid "Kir" -msgstr "Kir" - -#: ../rules/base.xml.in.h:334 ../rules/evdev.xml.in.h:334 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:335 ../rules/evdev.xml.in.h:335 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:336 ../rules/evdev.xml.in.h:336 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Etelä-Korea" -#: ../rules/base.xml.in.h:337 ../rules/evdev.xml.in.h:337 -msgid "Korean 106-key" -msgstr "Korealainen 106-näppäiminen" - -#: ../rules/base.xml.in.h:338 ../rules/evdev.xml.in.h:338 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" -msgstr "" +msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:339 ../rules/evdev.xml.in.h:339 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdi, (F)" -#: ../rules/base.xml.in.h:340 ../rules/evdev.xml.in.h:340 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdi, arabia-latinalainen" -#: ../rules/base.xml.in.h:341 ../rules/evdev.xml.in.h:341 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdi, latinalainen Alt-Q" -#: ../rules/base.xml.in.h:342 ../rules/evdev.xml.in.h:342 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdi, latinalainen Q" -#: ../rules/base.xml.in.h:343 ../rules/evdev.xml.in.h:343 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgisia" -#: ../rules/base.xml.in.h:344 ../rules/evdev.xml.in.h:344 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:345 ../rules/evdev.xml.in.h:345 +#: ../rules/base.xml.in.h:359 msgid "LEKP" -msgstr "" +msgstr "LEKP" -#: ../rules/base.xml.in.h:346 ../rules/evdev.xml.in.h:346 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" -msgstr "" +msgstr "LEKPa" -#: ../rules/base.xml.in.h:347 ../rules/evdev.xml.in.h:347 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:348 ../rules/evdev.xml.in.h:348 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:349 ../rules/evdev.xml.in.h:349 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Kannettava Compaq (esim. Armada) kannettavan näppäimistö " -#: ../rules/base.xml.in.h:350 ../rules/evdev.xml.in.h:350 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Kannettava Compaq (esim. Armada) Internet-näppäimistö " -#: ../rules/base.xml.in.h:351 ../rules/evdev.xml.in.h:351 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Kannettava eMachines m68xx" -#: ../rules/base.xml.in.h:352 ../rules/evdev.xml.in.h:352 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latinalainen" -#: ../rules/base.xml.in.h:353 ../rules/evdev.xml.in.h:353 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latinalainen amerikka" -#: ../rules/base.xml.in.h:354 ../rules/evdev.xml.in.h:354 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latinalainen Unicode" -#: ../rules/base.xml.in.h:355 ../rules/evdev.xml.in.h:355 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latinalainen Unicode-qwerty" -#: ../rules/base.xml.in.h:356 ../rules/evdev.xml.in.h:356 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latinalainen qwerty" -#: ../rules/base.xml.in.h:357 ../rules/evdev.xml.in.h:357 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latinalainen Unicode" -#: ../rules/base.xml.in.h:358 ../rules/evdev.xml.in.h:358 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latinalainen Unicode-qwerty" -#: ../rules/base.xml.in.h:359 ../rules/evdev.xml.in.h:359 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latinalainen guillemot-lainausmerkeillä" -#: ../rules/base.xml.in.h:360 ../rules/evdev.xml.in.h:360 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Latvia" -#: ../rules/base.xml.in.h:361 ../rules/evdev.xml.in.h:361 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:362 ../rules/evdev.xml.in.h:362 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Vasen Alt" -#: ../rules/base.xml.in.h:363 ../rules/evdev.xml.in.h:363 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Vasen Alt-näppäin (painettaessa)" -#: ../rules/base.xml.in.h:364 ../rules/evdev.xml.in.h:364 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Vaihda vasen Alt-näppän vasemman Win-näppäimen kanssa" -#: ../rules/base.xml.in.h:365 ../rules/evdev.xml.in.h:365 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Vasen Ctrl" -#: ../rules/base.xml.in.h:366 ../rules/evdev.xml.in.h:366 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Vasen Ctrl+Vasen Shift" -#: ../rules/base.xml.in.h:367 ../rules/evdev.xml.in.h:367 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Vasen Shift" -#: ../rules/base.xml.in.h:368 ../rules/evdev.xml.in.h:368 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Vasen Win" -#: ../rules/base.xml.in.h:369 ../rules/evdev.xml.in.h:369 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Vasen Win (ensimmäiselle asettelulle), Oikea Win/valikko (viimeiselle asettelulle)" -#: ../rules/base.xml.in.h:370 ../rules/evdev.xml.in.h:370 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Vasen Win (painettaessa)" -#: ../rules/base.xml.in.h:371 ../rules/evdev.xml.in.h:371 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Vasenkätinen" -#: ../rules/base.xml.in.h:372 ../rules/evdev.xml.in.h:372 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Vasenkätinen dvorak" -#: ../rules/base.xml.in.h:373 ../rules/evdev.xml.in.h:373 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Perinteinen" -#: ../rules/base.xml.in.h:374 ../rules/evdev.xml.in.h:374 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Perinteinen Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:376 ../rules/evdev.xml.in.h:376 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" -msgstr "" +msgstr "Perinteinen näppäin pilkulla" -#: ../rules/base.xml.in.h:377 ../rules/evdev.xml.in.h:377 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" -msgstr "" +msgstr "Perinteinen näppäin pisteellä" -#: ../rules/base.xml.in.h:378 ../rules/evdev.xml.in.h:378 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Pienempi-kuin/suurempi-kuin" -#: ../rules/base.xml.in.h:379 ../rules/evdev.xml.in.h:379 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Liettua" -#: ../rules/base.xml.in.h:380 ../rules/evdev.xml.in.h:380 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:381 ../rules/evdev.xml.in.h:381 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:382 ../rules/evdev.xml.in.h:382 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (vaihtoehtoinen)" -#: ../rules/base.xml.in.h:383 ../rules/evdev.xml.in.h:383 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:384 ../rules/evdev.xml.in.h:384 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:385 ../rules/evdev.xml.in.h:385 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:386 ../rules/evdev.xml.in.h:386 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:387 ../rules/evdev.xml.in.h:387 -msgid "Logitech Cordless Desktop Pro (alternate option2)" -msgstr "Logitech Cordless Desktop Pro (vaihtoehtoinen2)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" +msgstr "Logitech Cordless Desktop Pro (vaihtoehtoinen 2)" -#: ../rules/base.xml.in.h:388 ../rules/evdev.xml.in.h:388 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:389 ../rules/evdev.xml.in.h:389 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:390 ../rules/evdev.xml.in.h:390 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 -lisänäppäimet G15daemon-ohjelmasta" -#: ../rules/base.xml.in.h:391 ../rules/evdev.xml.in.h:391 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech-yleisnäppäimistö" -#: ../rules/base.xml.in.h:392 ../rules/evdev.xml.in.h:392 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 -näppämistö" -#: ../rules/base.xml.in.h:393 ../rules/evdev.xml.in.h:393 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet -näppämistö" -#: ../rules/base.xml.in.h:394 ../rules/evdev.xml.in.h:394 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator -näppämistö" -#: ../rules/base.xml.in.h:395 ../rules/evdev.xml.in.h:395 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite -näppäimistö" -#: ../rules/base.xml.in.h:396 ../rules/evdev.xml.in.h:396 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop -näppäimistö" -#: ../rules/base.xml.in.h:397 ../rules/evdev.xml.in.h:397 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X-näppäimistö" -#: ../rules/base.xml.in.h:398 ../rules/evdev.xml.in.h:398 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge -näppäimistö" -#: ../rules/base.xml.in.h:399 ../rules/evdev.xml.in.h:399 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo-näppäimistö" -#: ../rules/base.xml.in.h:400 ../rules/evdev.xml.in.h:400 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:401 ../rules/evdev.xml.in.h:401 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (malli Y-RB6)" -#: ../rules/base.xml.in.h:402 ../rules/evdev.xml.in.h:402 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:403 ../rules/evdev.xml.in.h:403 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:404 ../rules/evdev.xml.in.h:404 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" -msgstr "" +msgstr "alasorbi" -#: ../rules/base.xml.in.h:405 ../rules/evdev.xml.in.h:405 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" -msgstr "" +msgstr "alasorbi (qwertz)" -#: ../rules/base.xml.in.h:406 ../rules/evdev.xml.in.h:406 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:407 ../rules/evdev.xml.in.h:407 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:408 ../rules/evdev.xml.in.h:408 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:409 ../rules/evdev.xml.in.h:409 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:410 ../rules/evdev.xml.in.h:410 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (kansainvälinen)" -#: ../rules/base.xml.in.h:411 ../rules/evdev.xml.in.h:411 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonia" -#: ../rules/base.xml.in.h:412 ../rules/evdev.xml.in.h:412 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:413 ../rules/evdev.xml.in.h:413 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh vanha" -#: ../rules/base.xml.in.h:414 ../rules/evdev.xml.in.h:414 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:415 ../rules/evdev.xml.in.h:415 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:416 ../rules/evdev.xml.in.h:416 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Tee CapsLockista ylimääräinen askelpalautin" -#: ../rules/base.xml.in.h:417 ../rules/evdev.xml.in.h:417 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Tee CapsLockista ylimääräinen Ctrl" -#: ../rules/base.xml.in.h:418 ../rules/evdev.xml.in.h:418 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Tee CapsLockista ylimääräinen Esc" -#: ../rules/base.xml.in.h:419 ../rules/evdev.xml.in.h:419 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Tee CapsLockista ylimääräinen Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Tee CapsLockista ylimääräinen NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Tee CapsLockista ylimääräinen Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:420 ../rules/evdev.xml.in.h:420 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:421 ../rules/evdev.xml.in.h:421 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:422 ../rules/evdev.xml.in.h:422 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Malediivit" -#: ../rules/base.xml.in.h:423 ../rules/evdev.xml.in.h:423 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:424 ../rules/evdev.xml.in.h:424 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltalainen näppäimistö US-asettelulla" -#: ../rules/base.xml.in.h:425 ../rules/evdev.xml.in.h:425 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:426 ../rules/evdev.xml.in.h:426 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:427 ../rules/evdev.xml.in.h:427 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:428 ../rules/evdev.xml.in.h:428 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access-näppäimistö" -#: ../rules/base.xml.in.h:429 ../rules/evdev.xml.in.h:429 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:430 ../rules/evdev.xml.in.h:430 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Valikko" -#: ../rules/base.xml.in.h:431 ../rules/evdev.xml.in.h:431 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta tulee vasemmasta Win-näppäimestä" -#: ../rules/base.xml.in.h:432 ../rules/evdev.xml.in.h:432 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta tulee Win-näppäimistä" -#: ../rules/base.xml.in.h:433 ../rules/evdev.xml.in.h:433 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve 2000 -näppäimistö" -#: ../rules/base.xml.in.h:434 ../rules/evdev.xml.in.h:434 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft-Internet-näppäimistö" -#: ../rules/base.xml.in.h:435 ../rules/evdev.xml.in.h:435 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft-Internet-näppäimistö Pro, ruotsalainen" -#: ../rules/base.xml.in.h:436 ../rules/evdev.xml.in.h:436 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:437 ../rules/evdev.xml.in.h:437 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural-näppäimistö Elite" -#: ../rules/base.xml.in.h:438 ../rules/evdev.xml.in.h:438 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural-näppäimistö Pro / Microsoft-Internet-näppäimistö Pro" -#: ../rules/base.xml.in.h:439 ../rules/evdev.xml.in.h:439 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural-näppäimistö Pro OEM" -#: ../rules/base.xml.in.h:440 ../rules/evdev.xml.in.h:440 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural-näppäimistö Pro USB / Microsoft-Internet-näppäimistö Pro" -#: ../rules/base.xml.in.h:441 ../rules/evdev.xml.in.h:441 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic -näppäimistö 7000" -#: ../rules/base.xml.in.h:442 ../rules/evdev.xml.in.h:442 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office-näppäimistö" -#: ../rules/base.xml.in.h:443 ../rules/evdev.xml.in.h:443 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft-langaton multimedianäppämistö 1.0A" -#: ../rules/base.xml.in.h:444 ../rules/evdev.xml.in.h:444 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Sekalaisia yhteensopivuusvalintoja" -#: ../rules/base.xml.in.h:445 ../rules/evdev.xml.in.h:445 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:446 ../rules/evdev.xml.in.h:446 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:447 ../rules/evdev.xml.in.h:447 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:448 ../rules/evdev.xml.in.h:448 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:449 ../rules/evdev.xml.in.h:449 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolia" -#: ../rules/base.xml.in.h:450 ../rules/evdev.xml.in.h:450 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:451 ../rules/evdev.xml.in.h:451 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokko" -#: ../rules/base.xml.in.h:452 ../rules/evdev.xml.in.h:452 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Monikielinen" -#: ../rules/base.xml.in.h:453 ../rules/evdev.xml.in.h:453 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Monikielinen, ensimmäinen osa" -#: ../rules/base.xml.in.h:454 ../rules/evdev.xml.in.h:454 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Monikielinen, toinen osa" -#: ../rules/base.xml.in.h:455 ../rules/evdev.xml.in.h:455 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:456 ../rules/evdev.xml.in.h:456 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F-tyylin Backspace" -#: ../rules/base.xml.in.h:457 ../rules/evdev.xml.in.h:457 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:458 ../rules/evdev.xml.in.h:458 +#: ../rules/base.xml.in.h:475 msgid "Nativo" -msgstr "" +msgstr "Nativo" -#: ../rules/base.xml.in.h:459 ../rules/evdev.xml.in.h:459 -#, fuzzy +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" -msgstr "Esperanto" +msgstr "Nativo esperantolle" -#: ../rules/base.xml.in.h:460 ../rules/evdev.xml.in.h:460 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" -msgstr "" +msgstr "Nativo yhdysvaltalaisille näppäimistöille" -#: ../rules/base.xml.in.h:461 ../rules/evdev.xml.in.h:461 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:462 ../rules/evdev.xml.in.h:462 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:463 ../rules/evdev.xml.in.h:463 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:464 ../rules/evdev.xml.in.h:464 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Alankomaat" -#: ../rules/base.xml.in.h:465 ../rules/evdev.xml.in.h:465 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Uusi foneettinen" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:466 ../rules/evdev.xml.in.h:466 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:467 ../rules/evdev.xml.in.h:467 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:468 ../rules/evdev.xml.in.h:468 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Sitova välilyöntimerkki 4. tasolla" -#: ../rules/base.xml.in.h:469 ../rules/evdev.xml.in.h:469 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Sitova välilyöntimerkki 4. tasolla ja kapea sitova välilyöntimerkki 6. tasolla" -#: ../rules/base.xml.in.h:470 ../rules/evdev.xml.in.h:470 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Sitova välilyöntimerkki 4. tasolla, kapea sitova välilyöntimerkki 6. tasolla (Ctrl+Shift)" -#: ../rules/base.xml.in.h:471 ../rules/evdev.xml.in.h:471 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Sitova välilyöntimerkki 2. tasolla" -#: ../rules/base.xml.in.h:472 ../rules/evdev.xml.in.h:472 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Sitova välilyöntimerkki 3. tasolla" -#: ../rules/base.xml.in.h:473 ../rules/evdev.xml.in.h:473 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Sitova välilyöntimerkki 3. tasolla eikä mitään 4. tasolla" -#: ../rules/base.xml.in.h:474 ../rules/evdev.xml.in.h:474 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Sitova välilyöntimerkki 3. tasolla, kapea sitova välilyöntimerkki 4. tasolla" -#: ../rules/base.xml.in.h:475 ../rules/evdev.xml.in.h:475 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:476 ../rules/evdev.xml.in.h:476 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Pohjoissaami" -#: ../rules/base.xml.in.h:477 ../rules/evdev.xml.in.h:477 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Pohjoissaami, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:478 ../rules/evdev.xml.in.h:478 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:479 ../rules/evdev.xml.in.h:479 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norja" -#: ../rules/base.xml.in.h:480 ../rules/evdev.xml.in.h:480 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:481 ../rules/evdev.xml.in.h:481 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Numerosormion Del-näppäimen toiminta" -#: ../rules/base.xml.in.h:482 ../rules/evdev.xml.in.h:482 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Sormionäppäimet toimivat kuten Macissa" -#: ../rules/base.xml.in.h:483 ../rules/evdev.xml.in.h:483 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Sormion asettelun valinta" -#: ../rules/base.xml.in.h:484 ../rules/evdev.xml.in.h:484 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:485 ../rules/evdev.xml.in.h:485 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:486 ../rules/evdev.xml.in.h:486 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC, dari" -#: ../rules/base.xml.in.h:487 ../rules/evdev.xml.in.h:487 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC, pashto" -#: ../rules/base.xml.in.h:488 ../rules/evdev.xml.in.h:488 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC, eteläinen uzbeekki" -#: ../rules/base.xml.in.h:489 ../rules/evdev.xml.in.h:489 +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "oksitaani" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:490 ../rules/evdev.xml.in.h:490 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:491 ../rules/evdev.xml.in.h:491 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:492 ../rules/evdev.xml.in.h:492 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet-näppäimistö" -#: ../rules/base.xml.in.h:493 ../rules/evdev.xml.in.h:493 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetia" -#: ../rules/base.xml.in.h:494 ../rules/evdev.xml.in.h:494 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossetia, Win-näppäimet" -#: ../rules/base.xml.in.h:495 ../rules/evdev.xml.in.h:495 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Ossetia, vanha" -#: ../rules/base.xml.in.h:496 ../rules/evdev.xml.in.h:496 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx-sarja" -#: ../rules/base.xml.in.h:497 ../rules/evdev.xml.in.h:497 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:498 ../rules/evdev.xml.in.h:498 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:499 ../rules/evdev.xml.in.h:499 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:500 ../rules/evdev.xml.in.h:500 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:501 ../rules/evdev.xml.in.h:501 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persia, persialaisella sormiolla" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Foneettinen" -#: ../rules/base.xml.in.h:502 ../rules/evdev.xml.in.h:502 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "Foneettinen, Win-näppäimet" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:503 ../rules/evdev.xml.in.h:503 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Puola" -#: ../rules/base.xml.in.h:504 ../rules/evdev.xml.in.h:504 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytoninen" -#: ../rules/base.xml.in.h:505 ../rules/evdev.xml.in.h:505 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugali" -#: ../rules/base.xml.in.h:506 ../rules/evdev.xml.in.h:506 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:507 ../rules/evdev.xml.in.h:507 -msgid "Pro Keypad" -msgstr "Pro sormio" - -#: ../rules/base.xml.in.h:508 ../rules/evdev.xml.in.h:508 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:509 ../rules/evdev.xml.in.h:509 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Ohjelmoijan dvorak" -#: ../rules/base.xml.in.h:510 ../rules/evdev.xml.in.h:510 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:511 ../rules/evdev.xml.in.h:511 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:512 ../rules/evdev.xml.in.h:512 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:513 ../rules/evdev.xml.in.h:513 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Oikea Alt" -#: ../rules/base.xml.in.h:514 ../rules/evdev.xml.in.h:514 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Oikea Alt (painettaessa)" -#: ../rules/base.xml.in.h:515 ../rules/evdev.xml.in.h:515 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Oikea Alt-näppäin ei koskaan valitse kolmatta tasoa" -#: ../rules/base.xml.in.h:516 ../rules/evdev.xml.in.h:516 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Oikea Alt, Shift-Oikea Alt on Multi_Key" -#: ../rules/base.xml.in.h:517 ../rules/evdev.xml.in.h:517 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Oikea Ctrl" -#: ../rules/base.xml.in.h:518 ../rules/evdev.xml.in.h:518 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Oikea Ctrl (painettaessa)" -#: ../rules/base.xml.in.h:519 ../rules/evdev.xml.in.h:519 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Oikea Ctrl kuten oikea Alt" -#: ../rules/base.xml.in.h:520 ../rules/evdev.xml.in.h:520 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Oikea Shift" -#: ../rules/base.xml.in.h:521 ../rules/evdev.xml.in.h:521 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Oikea Win" -#: ../rules/base.xml.in.h:522 ../rules/evdev.xml.in.h:522 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Oikea Win (painettaessa)" -#: ../rules/base.xml.in.h:523 ../rules/evdev.xml.in.h:523 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Oikeakätinen" -#: ../rules/base.xml.in.h:524 ../rules/evdev.xml.in.h:524 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Oikeakätinen dvorak" -#: ../rules/base.xml.in.h:525 ../rules/evdev.xml.in.h:525 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Romania" -#: ../rules/base.xml.in.h:526 ../rules/evdev.xml.in.h:526 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Romanialainen näppäimistö saksalaisilla kirjaimilla" -#: ../rules/base.xml.in.h:527 ../rules/evdev.xml.in.h:527 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Romanialainen näppäimistö saksalaisilla kirjaimilla, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:528 ../rules/evdev.xml.in.h:528 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:529 ../rules/evdev.xml.in.h:529 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:530 ../rules/evdev.xml.in.h:530 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Venäjä" -#: ../rules/base.xml.in.h:531 ../rules/evdev.xml.in.h:531 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Venäläinen" -#: ../rules/base.xml.in.h:532 ../rules/evdev.xml.in.h:532 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Venäläinen foneettinen" -#: ../rules/base.xml.in.h:533 ../rules/evdev.xml.in.h:533 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Venäläinen foneettinen dvorak" -#: ../rules/base.xml.in.h:534 ../rules/evdev.xml.in.h:534 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Venäläinen foneettinen, ei kuolleita näppäimiä" -#: ../rules/base.xml.in.h:535 ../rules/evdev.xml.in.h:535 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Venäjä kazakhin kanssa" -#: ../rules/base.xml.in.h:536 ../rules/evdev.xml.in.h:536 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST langaton multimedianäppäimistö" -#: ../rules/base.xml.in.h:537 ../rules/evdev.xml.in.h:537 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:538 ../rules/evdev.xml.in.h:538 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:539 ../rules/evdev.xml.in.h:539 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:540 ../rules/evdev.xml.in.h:540 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:541 ../rules/evdev.xml.in.h:541 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:542 ../rules/evdev.xml.in.h:542 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:543 ../rules/evdev.xml.in.h:543 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:544 ../rules/evdev.xml.in.h:544 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:545 ../rules/evdev.xml.in.h:545 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:546 ../rules/evdev.xml.in.h:546 +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Scroll Lock" + +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:547 ../rules/evdev.xml.in.h:547 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" -msgstr "" +msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:548 ../rules/evdev.xml.in.h:548 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Puolipilkku kolmannella tasolla" -#: ../rules/base.xml.in.h:549 ../rules/evdev.xml.in.h:549 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbia" -#: ../rules/base.xml.in.h:550 ../rules/evdev.xml.in.h:550 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift kumoaa CapsLockin" -#: ../rules/base.xml.in.h:551 ../rules/evdev.xml.in.h:551 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift ei kumoa CapsLockia, valitsee 3. tason sen sijaan" -#: ../rules/base.xml.in.h:552 ../rules/evdev.xml.in.h:552 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shift ja sormionäppäimet toimivat kuten MS Windowsissa" -#: ../rules/base.xml.in.h:553 ../rules/evdev.xml.in.h:553 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:554 ../rules/evdev.xml.in.h:554 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "yksinkertainen" -#: ../rules/base.xml.in.h:555 ../rules/evdev.xml.in.h:555 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakia" -#: ../rules/base.xml.in.h:556 ../rules/evdev.xml.in.h:556 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenia" -#: ../rules/base.xml.in.h:557 ../rules/evdev.xml.in.h:557 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Etelä-Afrikka" -#: ../rules/base.xml.in.h:558 ../rules/evdev.xml.in.h:558 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Eteläinen uzbeekki" -#: ../rules/base.xml.in.h:559 ../rules/evdev.xml.in.h:559 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Espanja" -#: ../rules/base.xml.in.h:560 ../rules/evdev.xml.in.h:560 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Erikoisnäppäimet (Ctrl+Alt+<näppäin>) käsitellään palvelimessa" -#: ../rules/base.xml.in.h:561 ../rules/evdev.xml.in.h:561 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:562 ../rules/evdev.xml.in.h:562 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:563 ../rules/evdev.xml.in.h:563 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Tavallinen" -#: ../rules/base.xml.in.h:564 ../rules/evdev.xml.in.h:564 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Tavallinen (Pilkku alla)" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:566 ../rules/evdev.xml.in.h:566 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Tavallinen RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:568 ../rules/evdev.xml.in.h:568 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Tavallinen RSTU venäläisellä asettelulla" -#: ../rules/base.xml.in.h:569 ../rules/evdev.xml.in.h:569 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:570 ../rules/evdev.xml.in.h:570 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sunin kuolleet näppäimet" -#: ../rules/base.xml.in.h:571 ../rules/evdev.xml.in.h:571 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power -multimedianäppäimistö" -#: ../rules/base.xml.in.h:572 ../rules/evdev.xml.in.h:572 -msgid "Super is mapped to Win keys" -msgstr "Super tulee Win-näppäimistä" - -#: ../rules/base.xml.in.h:573 ../rules/evdev.xml.in.h:573 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:574 ../rules/evdev.xml.in.h:574 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:575 ../rules/evdev.xml.in.h:575 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:576 ../rules/evdev.xml.in.h:576 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Vaihda Ctrl ja CapsLock" -#: ../rules/base.xml.in.h:577 ../rules/evdev.xml.in.h:577 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Vaihda Esc ja CapsLock" -#: ../rules/base.xml.in.h:578 ../rules/evdev.xml.in.h:578 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:579 ../rules/evdev.xml.in.h:579 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Ruotsi" -#: ../rules/base.xml.in.h:580 ../rules/evdev.xml.in.h:580 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Sveitsi" -#: ../rules/base.xml.in.h:581 ../rules/evdev.xml.in.h:581 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (lehtiö-PC)" -#: ../rules/base.xml.in.h:582 ../rules/evdev.xml.in.h:582 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:583 ../rules/evdev.xml.in.h:583 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syyria" -#: ../rules/base.xml.in.h:584 ../rules/evdev.xml.in.h:584 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syyrialainen" -#: ../rules/base.xml.in.h:585 ../rules/evdev.xml.in.h:585 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syyrialainen foneettinen" -#: ../rules/base.xml.in.h:586 ../rules/evdev.xml.in.h:586 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:587 ../rules/evdev.xml.in.h:587 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadžikistan" -#: ../rules/base.xml.in.h:588 ../rules/evdev.xml.in.h:588 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamili" -#: ../rules/base.xml.in.h:589 ../rules/evdev.xml.in.h:589 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamili TAB Typewriter" -#: ../rules/base.xml.in.h:590 ../rules/evdev.xml.in.h:590 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamili TSCII Typewriter" -#: ../rules/base.xml.in.h:591 ../rules/evdev.xml.in.h:591 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamili Unicode" -#: ../rules/base.xml.in.h:592 ../rules/evdev.xml.in.h:592 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:593 ../rules/evdev.xml.in.h:593 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tataari" -#: ../rules/base.xml.in.h:594 ../rules/evdev.xml.in.h:594 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:595 ../rules/evdev.xml.in.h:595 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:596 ../rules/evdev.xml.in.h:596 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thaimaa" -#: ../rules/base.xml.in.h:597 ../rules/evdev.xml.in.h:597 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tiibet" -#: ../rules/base.xml.in.h:598 ../rules/evdev.xml.in.h:598 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tiibet (ASCII-numeroilla)" -#: ../rules/base.xml.in.h:599 ../rules/evdev.xml.in.h:599 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:600 ../rules/evdev.xml.in.h:600 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh, vaihtoehtoinen" -#: ../rules/base.xml.in.h:601 ../rules/evdev.xml.in.h:601 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh, vaihtoehtoinen foneettinen" -#: ../rules/base.xml.in.h:602 ../rules/evdev.xml.in.h:602 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh, laajennettu" -#: ../rules/base.xml.in.h:603 ../rules/evdev.xml.in.h:603 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh, laajennettu foneettinen" -#: ../rules/base.xml.in.h:604 ../rules/evdev.xml.in.h:604 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh, foneettinen" -#: ../rules/base.xml.in.h:605 ../rules/evdev.xml.in.h:605 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tildemuunnos (~)" -#: ../rules/base.xml.in.h:606 ../rules/evdev.xml.in.h:606 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:607 ../rules/evdev.xml.in.h:607 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." -msgstr "" +msgstr "Vastaavaan näppäimeen Dvorak-näppäimistössä." -#: ../rules/base.xml.in.h:608 ../rules/evdev.xml.in.h:608 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." -msgstr "" +msgstr "Vastaavaan näppäimeen Qwerty-näppäimistössä." -#: ../rules/base.xml.in.h:609 ../rules/evdev.xml.in.h:609 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:610 ../rules/evdev.xml.in.h:610 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Perinteinen foneettinen" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:611 ../rules/evdev.xml.in.h:611 +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:612 ../rules/evdev.xml.in.h:612 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:613 ../rules/evdev.xml.in.h:613 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turkki" -#: ../rules/base.xml.in.h:614 ../rules/evdev.xml.in.h:614 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "Turkmenistan" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Kirjoituskone" -#: ../rules/base.xml.in.h:615 ../rules/evdev.xml.in.h:615 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" -msgstr "" +msgstr "UCW-asettelu (vain aksenttikirjaimet)" -#: ../rules/base.xml.in.h:616 ../rules/evdev.xml.in.h:616 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Yhdysvaltalainen näppäimistö bosnialaisilla merkkipareilla" -#: ../rules/base.xml.in.h:617 ../rules/evdev.xml.in.h:617 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Yhdysvaltalainen näppäimistö bosnialaisilla kirjaimilla" -#: ../rules/base.xml.in.h:618 ../rules/evdev.xml.in.h:618 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Yhdysvaltalainen näppäimistö kroatialaisilla merkkipareilla" -#: ../rules/base.xml.in.h:619 ../rules/evdev.xml.in.h:619 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Yhdysvaltalainen näppäimistö kroatialaisilla kirjaimilla" -#: ../rules/base.xml.in.h:620 ../rules/evdev.xml.in.h:620 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Yhdysvaltalainen näppäimistö virolaisilla kirjaimilla" -#: ../rules/base.xml.in.h:621 ../rules/evdev.xml.in.h:621 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Yhdysvaltalainen näppäimistö italialaisilla kirjaimilla" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Yhdysvaltalainen näppäimistö liettualaisilla kirjaimilla" -#: ../rules/base.xml.in.h:622 ../rules/evdev.xml.in.h:622 -msgid "US keyboard with Slovenian digraphs" -msgstr "Yhdysvaltalainen näppäimistö slovenialaisilla merkkipareilla" - -#: ../rules/base.xml.in.h:623 ../rules/evdev.xml.in.h:623 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Yhdysvaltalainen näppäimistö slovenialaisilla kirjaimilla" -#: ../rules/base.xml.in.h:624 ../rules/evdev.xml.in.h:624 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:625 ../rules/evdev.xml.in.h:625 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:626 ../rules/evdev.xml.in.h:626 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:627 ../rules/evdev.xml.in.h:627 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraina" -#: ../rules/base.xml.in.h:628 ../rules/evdev.xml.in.h:628 -msgid "Unicode" -msgstr "Unicode" - -#: ../rules/base.xml.in.h:629 ../rules/evdev.xml.in.h:629 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unicode-lisäosat (nuolet ja matematiikkatoiminnot)" -#: ../rules/base.xml.in.h:630 ../rules/evdev.xml.in.h:630 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unicode-lisäosat (nuolet ja matematiikkatoiminnot). Matematiikkatoiminnot oletustasolla" -#: ../rules/base.xml.in.h:631 ../rules/evdev.xml.in.h:631 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "Unicode-asiantuntija" -#: ../rules/base.xml.in.h:632 ../rules/evdev.xml.in.h:632 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Iso-Britannia" -#: ../rules/base.xml.in.h:633 ../rules/evdev.xml.in.h:633 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:634 ../rules/evdev.xml.in.h:634 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, vaihtoehtoinen foneettinen" -#: ../rules/base.xml.in.h:635 ../rules/evdev.xml.in.h:635 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, foneettinen" -#: ../rules/base.xml.in.h:636 ../rules/evdev.xml.in.h:636 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Win-näppäimet" -#: ../rules/base.xml.in.h:637 ../rules/evdev.xml.in.h:637 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Käytä bosnialaisia merkkipareja" -#: ../rules/base.xml.in.h:638 ../rules/evdev.xml.in.h:638 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Käytä kroatialaisia merkkipareja" -#: ../rules/base.xml.in.h:639 ../rules/evdev.xml.in.h:639 -msgid "Use Slovenian digraphs" -msgstr "Käytä slovenialaisia merkkipareja" - -#: ../rules/base.xml.in.h:640 ../rules/evdev.xml.in.h:640 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Käytä guillemot-lainausmerkkejä" -#: ../rules/base.xml.in.h:641 ../rules/evdev.xml.in.h:641 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Käytä näppäimistö-lediä näyttämään vaihtoehtoista asettelua" -#: ../rules/base.xml.in.h:642 ../rules/evdev.xml.in.h:642 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Sitovan välilyöntimerkin syöttäminen" -#: ../rules/base.xml.in.h:643 ../rules/evdev.xml.in.h:643 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Normaali välilyönti kaikilla tasoilla" -#: ../rules/base.xml.in.h:644 ../rules/evdev.xml.in.h:644 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:645 ../rules/evdev.xml.in.h:645 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistan" -#: ../rules/base.xml.in.h:646 ../rules/evdev.xml.in.h:646 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:647 ../rules/evdev.xml.in.h:647 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet -näppäimistö" -#: ../rules/base.xml.in.h:648 ../rules/evdev.xml.in.h:648 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:649 ../rules/evdev.xml.in.h:649 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 -sormio Unicode-lisäyksin (nuolet sekä matematiikkaoperaatiot)" -#: ../rules/base.xml.in.h:650 ../rules/evdev.xml.in.h:650 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 -sormio Unicode-lisäyksin (nuolet sekä matematiikkaoperaatiot). Matematiikkaoperaatiot oletustasolla" -#: ../rules/base.xml.in.h:651 ../rules/evdev.xml.in.h:651 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang malli 724 azerty" -#: ../rules/base.xml.in.h:652 ../rules/evdev.xml.in.h:652 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Läntinen" -#: ../rules/base.xml.in.h:653 ../rules/evdev.xml.in.h:653 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:654 ../rules/evdev.xml.in.h:654 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-näppäimet" -#: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "<\\|>-näppäimillä" -#: ../rules/base.xml.in.h:656 ../rules/evdev.xml.in.h:656 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Euro-merkki 5-näppäimessä" -#: ../rules/base.xml.in.h:657 ../rules/evdev.xml.in.h:657 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Guillemot-lainausmerkeillä" -#: ../rules/base.xml.in.h:658 ../rules/evdev.xml.in.h:658 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo!-Internet-näppäimistö" -#: ../rules/base.xml.in.h:659 ../rules/evdev.xml.in.h:659 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" -#: ../rules/base.xml.in.h:660 ../rules/evdev.xml.in.h:660 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:661 ../rules/evdev.xml.in.h:661 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z ja ZHE vaihdettu" -#: ../rules/base.xml.in.h:662 ../rules/evdev.xml.in.h:662 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:663 ../rules/evdev.xml.in.h:663 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:664 ../rules/evdev.xml.in.h:664 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/numerot" -#: ../rules/base.xml.in.h:665 ../rules/evdev.xml.in.h:665 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "numerot" -#: ../rules/base.xml.in.h:666 ../rules/evdev.xml.in.h:666 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" -msgstr "" +msgstr "sijoiltaan olevat puolipilkku ja lainaismekrki (vanhentunut)" -#: ../rules/base.xml.in.h:667 ../rules/evdev.xml.in.h:667 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:668 ../rules/evdev.xml.in.h:668 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:669 ../rules/evdev.xml.in.h:669 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, laajennettu Backslash" -#: ../rules/base.xml.in.h:670 ../rules/evdev.xml.in.h:670 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/numerot" -#: ../rules/base.xml.in.h:671 ../rules/evdev.xml.in.h:671 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Aksenttien yhdistäminen kuolleiden näppäinten sijaan" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Kansainvälinen (AltGr-Unicode-yhdistäminen)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Kansainvälinen (AltGr-Unicode-yhdistäminen, vaihtoehtoinen)" + +#~ msgid "Brazilian ABNT2" +#~ msgstr "Brasilialainen ABNT2" + +#~ msgid "Japanese 106-key" +#~ msgstr "Japanilainen 106-näppäiminen" + +#~ msgid "Keypad" +#~ msgstr "Sormio" + +#~ msgid "Kir" +#~ msgstr "Kir" + +#~ msgid "Korean 106-key" +#~ msgstr "Korealainen 106-näppäiminen" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Super is mapped to Win keys" +#~ msgstr "Super tulee Win-näppäimistä" + +#~ msgid "US keyboard with Slovenian digraphs" +#~ msgstr "Yhdysvaltalainen näppäimistö slovenialaisilla merkkipareilla" + +#~ msgid "Unicode" +#~ msgstr "Unicode" + +#~ msgid "Use Slovenian digraphs" +#~ msgstr "Käytä slovenialaisia merkkipareja" + #~ msgid "(Legacy) Dvorak" #~ msgstr "(Perinteinen) dvorak" @@ -2717,9 +2851,6 @@ msgstr "qwertz" #~ msgid "Both Shift keys together change layout." #~ msgstr "Molemmat Shift-näppäimet yhdessä vaihtavat asettelua." -#~ msgid "Caps Lock is Compose." -#~ msgstr "Caps Lock on Compose." - #~ msgid "CapsLock LED shows alternative layout." #~ msgstr "CapsLock-ledi näyttää vaihtoehtoista asettelua." @@ -2846,9 +2977,6 @@ msgstr "qwertz" #~ msgid "Third level choosers" #~ msgstr "Kolmannnen tason valitsimet" -#~ msgid "U.S. English" -#~ msgstr "Amerikanenglanti" - #~ msgid "Urdu" #~ msgstr "Urdu" @@ -2867,9 +2995,6 @@ msgstr "qwertz" #~ msgid "Alt+Shift changes group" #~ msgstr "Alt+Shift vaihtaa ryhmää" -#~ msgid "Basic" -#~ msgstr "Perus" - #~ msgid "Belgian" #~ msgstr "belgialainen" diff --git a/xorg-server/xkbdata.src/po/fr.po b/xorg-server/xkbdata.src/po/fr.po index aaaa672f3..fcc3850ed 100644 --- a/xorg-server/xkbdata.src/po/fr.po +++ b/xorg-server/xkbdata.src/po/fr.po @@ -7,10 +7,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.6pre1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-19 14:20-0500\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-16 14:54-0500\n" "Last-Translator: Marc Veillet <scouigne@gmail.com>\n" "Language-Team: French <traduc@traduc.org>\n" "MIME-Version: 1.0\n" @@ -373,2382 +373,2438 @@ msgid "Bangladesh" msgstr "Bangladesh" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Bashkirien" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Bélarus" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgique" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengali" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" -msgstr "Bepo, ergonomc, modèle Dvorak" +msgstr "Bépo, ergonomique, façon Dvorak" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" -msgstr "Bepo, ergonomic, modèle Dvorak, latin-9 seulement" +msgstr "Bépo, ergonomique, façon Dvorak, latin-9 seulement" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhoutan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Hébreu biblique (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnie-Herzégovine" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Les touches Alt ensemble" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Les touches Ctrl ensemble" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Les touches Maj. ensemble" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brésil" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Breton" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarie" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambodge" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Canada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Verr. maj." -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "Verr. Maj." -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "Verr. Maj. change vers la première disposition, Maj.+Verr. Maj. change vers la dernière disposition" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "Verr. Maj. (lorsque pressée), Alt+Verr. Maj. provoque le même résultat" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "Verr. maj. agit comme Maj. verrouillé. Maj. \"l'annule temporairement\"" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "Verr. maj. agit comme Maj. verrouillé. Maj. n'a pas d'effet sur Verr. Maj." -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "Verr. Maj. est désactivé." + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Comportement de la touche Verrouillage majuscule" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "Verr. maj. inverse Maj., ce qui affecte toutes les touches" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "Verr. maj. inverse la mise en majuscule usuelle des caractères alphabétiques" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "Verr. maj. permet la mise en majuscule interne. Maj. \"annule\" le verrouillage des majuscules" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "Verr. maj. permet la mise en majuscule interne. Maj. n'a pas d'effet sur cette commande" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Catalan avec L point médian" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cédille" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (autre option)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Chine" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chuvash" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Latin Chuvash" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Classique" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak classique" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet (13 touches)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet (18 touches)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet (7 touches)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Position de la touche Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "République démocratique du Congo" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control + Alt + Eff. arrière" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "La touche Ctrl est obtenue avec la touche Alt, Alt est obtenue avec les touches logo" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "La touche Ctrl est obtenue avec la touche Logo (et les touches Ctrl habituelles)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Tatar de Crimée (Q Dobruca-1)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Tatar de Crimée (Q Dobruca-2)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Tatar de Crimée (Alt-Q turc)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Tatar de Crimée (F turc)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Tatar de Crimée (Q turc)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Croatie" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Position de la touche Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Maj." -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cyrillique" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cyrillique avec guillemets" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cyrillique, Z et ZHE permutés" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "République tchèque" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "RDC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Touche morte d'accent aigu" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Touche morte d'accent grave" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Touches du pavé numérique par défaut" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell PC 101 touches" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Portable Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Portable Dell Precision série M" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Portable Latitude Dell" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Clavier multimédia USB Dell" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danemark" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Desktop sans fil" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 series" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (ponctuation britannique)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak international" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, guillemets polonais sur la touche « 1 »" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, guillemets polonais sur la touche des guillemets" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Orientale" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Éliminer les touches mortes" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Active des caractères typographiques supplémentaires" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Anglais" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Retour sur clavier numérique" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomique" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estonie" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Éthiopie" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Clavier piloté par evdev" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Étendue" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Étendue - Touches logo" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Barre contre-oblique étendue" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Variante (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Féroé, ÃŽles" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finlande" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Touches à quatre niveaux avec séparateurs abstraits" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Touches à quatre niveaux avec virgule" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Touches à quatre niveaux avec point" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Touches à quatre niveaux avec point, avec restrinction Latin-9" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Touches à quatre niveaux avec momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "France" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Français" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Français (Apple-Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Français (obsolète)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Dvorak français" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Français, touches mortes Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Français, sans touches mortes" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Portable Fujitsu-Siemens Computers AMILO" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Peul" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "PC générique 101 touches" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "PC générique 102 touches (intl)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "PC générique 104 touches" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "PC générique 105 touches (intl)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Géorgie" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Géorgien" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "AZERTY géorgien Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Allemand (Apple-Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Allemand, touches mortes Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Allemand, sans touches mortes" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Allemagne" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grèce" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Les touches Multiplier/Diviser basculent d'un groupe à l'autre" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinée" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Clavier Happy Hacking" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Clavier Happy Hacking pour Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Haoussa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x, clavier multimedia" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Hexadécimal" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homophone" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hongrie" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper est obtenu avec n'importe quelle touche Logo" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E (Intl)" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "Autre ISO" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islande" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Inclut le tilde" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Inde" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "International (AltCar et touches mortes)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "International (avec touches mortes)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlande" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israël" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italie" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japon" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "PC-98xx japonais" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Options de clavier japonais" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "La touche de verrouillage Kana agit comme touche de verrouillage" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kachoube" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakh avec russe" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakhstan" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Séquence de touches pour fermer le serveur X" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Touche sélectionnant le 3e niveau" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Touche(s) changeant de disposition." -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Pavé numérique" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Corée, République de" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurde, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurde, Arabe-latin" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurde, Latin Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurde, Latin Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirghizistan" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Compaq portable (p.e. Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Compaq portable Internet (p.e. Presario)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latin" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Amérique latine" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latin Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latin Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latin qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Unicode Latin" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Unicode Latin QWERTY" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latin avec guillemets" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lettonie" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Alt gauche" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Alt de gauche (lorsque pressée)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "La touche Alt de gauche est échangée avec la touche Logo de gauche" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Ctrl gauche" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Ctrl gauche+Maj. gauche" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Maj. gauche" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Touche Logo gauche" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Touche logo de gauche (première disposition), touche logo de droite (dernière disposition)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Logo de gauche (lorsque pressée)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Main gauche" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorak pour gaucher" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Obsolète" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Clavier Wang 724 obsolète" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Touche obsolète avec virgule" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Touche obsolète avec point" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Plus petit que/Plus grand que" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Lituanie" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Clavier Logitech Access" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (autre option)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (option alt 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Touches supplémentaires pour Logitech G15 via le démon G15" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Clavier Logitech générique" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Clavier Logitech Internet 350" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Clavier Logitech Internet" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Clavier Logitech Internet Navigator" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Clavier Logitech Media Elite" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Clavier Logitech sans-fil Ultra-X Media" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Clavier Logitech Ultra-X" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Clavier Logitech diNovo Edge" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Clavier Logitech diNovo" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless (modèle Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech Internet Navigator iTouch SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech Internet Navigator iTouch SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Serbe minuscule" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Serbe minuscule (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Macédoine" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Apple-Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Apple-Macintosh ancien" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, touches mortes Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, sans touches mortes" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Faire de la touche Verr. maj. une touche Ret. arr. supplémentaire." -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Faire de la touche Verr. maj. une touche Ctrl supplémentaire" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Faire de la touche Verr. maj. une touche Esc. supplémentaire." -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Faire de la touche Verr. maj. une touche Hyper supplémentaire" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Faire de la touche Verr. maj. une touche Verr. num. supplémentaire" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Faire de la touche Verr. maj. une touche Super supplémentaire." + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldives" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malte" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Clavier maltais avec disposition US" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Méta est obtenu avec la touche Logo de gauche" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Méta est obtenu avec n'importe quelle touche Logo" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Clavier Microsoft Comfort Curve 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Clavier Microsoft Internet" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Clavier Microsoft Internet Pro, suédois" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Clavier Microsoft Natural Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Clavier Microsoft Natural Pro / Clavier Microsoft Internet Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Clavier Microsoft Natural Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Clavier Microsoft Natural Pro USB / Clavier Microsoft Internet Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Clavier Microsoft ergonomique naturel sans fil 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Clavier Microsoft Office" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Clavier Microsoft Multimedia sans fil 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Diverses options de compatibilité" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolie" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Monténégro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Maroc" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Multilingue" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Multilingue, partie 1" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Multilingue, partie 2" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Ret. Arr. de style NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Native pour Espéranto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo pour claviers américains" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Népal" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Pays-Bas" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Nouveau phonétique" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Espace insécable au 4e niveau." -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Espace insécable au 4e niveau et une espace fine insécable au 6e niveau" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Espace insécable au 4e niveau et une espace fine insécable au 6e niveau (par les touches Ctrl+Maj.)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Espace insécable au 2e niveau" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Espace insécable au 3e niveau" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Espace insécable au 3e niveau et rien au 4e niveau" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Espace insécable au 3e niveau et une espace fine insécable au 4e niveau" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Sami du Nord" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Sami du Nord, sans touches mortes" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norvège" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "Verr. Num." -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Comportement de la touche de suppression du clavier numérique" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Les touches du pavé numérique se comportent comme sur MacIntosh" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Sélection de groupe du clavier numérique" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Ouzbek du Sud" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Occitan" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Clavier Internet Ortek MCK-800 MM" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossétie" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossétie avec touches Logo" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "(Obsolète) Ossétie" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Perse, avec clavier numérique perse" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Phonétique" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Touches logo phonétiques" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Pologne" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonique" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pavé Pro" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programmeur Dvorak" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Alt. droite" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Alt de droite (lorsque pressée)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Alt de droite ne sélectionne jamais le 3e niveau" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Alt de droite, Maj.+Alt de droite est une touche multiple" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Crtl de droite" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Ctrl de droite (lorsque pressée)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Ctrl de droite comme Alt de droite" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Maj. droite" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Touche logo droite" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Touche logo de (lorsque pressée)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Main droite" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorak pour droitier" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Roumanie" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Clavier roumain avec lettres allemandes" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Clavier roumain avec lettres allemandes, sans touches mortes" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Russie" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Russe" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Phonétique russe" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Dvorak phonétique russe" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Phonétique russe, sans lettres mortes" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Russe avec kazakh" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia sans fil" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Arrêt défilement" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "Arrêt défil." -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Point virgule au 3e niveau" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbie" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Maj. annule le verrouillage majuscule" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Maj. n'annule pas le verrouillage numérique; choisir le 3e niveau" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "La touche Maj. avec le pavé numérique se comporte comme dans MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Maj.+ Verr. maj." -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Simple" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovaquie" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovénie" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Afrique du Sud" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Ouzbek du Sud" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Espagne" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Les combinaisons spéciales (Ctrl+Alt+<touche>) sont traitées par un serveur" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (cédille)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Phonétique standard" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standard RSTU avec une disposition russe" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Touches mortes Sun" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Multimedia Super Power" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Permuter Ctrl et Verr. maj." -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Permuter ESC et Verr. maj." -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Sué" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Suède" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Suisse" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syrie" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syriaque" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Phonétique syriaque" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadjikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamoul" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Machine à écrire tamoule TAB" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Machine à écrire tamoule TSCII" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Unicode tamoul" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thaïlande" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibétain" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibétain (avec touches numériques ASCII)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternatif" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh avec phonétique alternative" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh étendu" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh avec phonétique étendue" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh phonétique" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Variante avec tilde" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Mène à la touche correspondante sur un clavier Dvorak." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Mène à la touche correspondante sur un clavier Qwerty" -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Phonétique traditionnel" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turquie" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistan" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Machine à écrire" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Disposition UCW (lettres accentuées seulement)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Clavier US avec digraphes bosniaques" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Clavier US avec lettres bosniaques" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Clavier US avec digraphes croates" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Clavier US avec lettres croates" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Clavier US avec lettres estoniennes" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Clavier US avec lettres italiennes" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Clavier US avec lettres lituaniennes" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Clavier US avec lettres slovènes" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Oudmourte" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraine" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Ajouts Unicode (touches fléchées et opérateurs mathématiques)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Ajouts Unicode (touches fléchées et opérateurs mathématiques). Les opérateurs mathématiques se trouvent sur le niveau par défaut" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Royaume-Uni" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Ourdou, phonétique alternatif" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Ourdou, phonétique" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Ourdou, touches Logo" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Avec digraphes bosniaques" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Avec digraphes croates" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Remplacer les guillemets droits avec les guillements français" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Utiliser les voyants lumineux du clavier pour afficher une disposition alternative" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Utiliser la barre d'espacement pout insérer un espace insécable" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "La barre d'espacement renvoie une espace ordinaire à tous les niveaux" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Ouzbékistan" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Viêt Nam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "Clavier Internet ViewSonic KU-306" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Clavier Wang 724 avec ajouts Unicode (touches fléchées et opérateurs mathématiques)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Clavier Wang 724 avec ajouts Unicode (touches fléchées et opérateurs mathématiques). Les opérateurs mathématiques se trouvent sur le niveau par défaut" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Modèle Wang 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Occidentale" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Touches Logo" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Avec la touche <\\|>" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Avec le signe Euro sur la touche 5." -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Avec guillemets" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Clavier Yahoo! Internet" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yacoute" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z et ZHE permutés" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/chiffres" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "chiffres" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "(Obsolète) Point-virgule et guillemets droits déplacés" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, contre-oblique étendue" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/chiffres" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Combining accents instead of dead keys" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Coeur d'Alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "International (AltCar et Unicode)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "International (AltCar et Unicode, alternatif))" + +#~ msgid "Keypad" +#~ msgstr "Pavé numérique" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pavé Pro" + +#~ msgid "Standard Phonetic" +#~ msgstr "Phonétique standard" + #~ msgid "Brazilian ABNT2" #~ msgstr "ABNT2 brésilien" @@ -2944,8 +3000,5 @@ msgstr "qwertz" #~ msgid "Power G5" #~ msgstr "Power G5" -#~ msgid "US keyboard with Maltian letters" -#~ msgstr "Clavier US avec lettres maltaises" - #~ msgid "si1452" #~ msgstr "si1452" diff --git a/xorg-server/xkbdata.src/po/hu.po b/xorg-server/xkbdata.src/po/hu.po index f52c67bd5..7d49d210d 100644 --- a/xorg-server/xkbdata.src/po/hu.po +++ b/xorg-server/xkbdata.src/po/hu.po @@ -1,16 +1,16 @@ # translation of xkeyboard-config to Hungarian -# Copyright (C) 2004, 2006, 2007, 2008 Free Software Foundation, Inc. +# Copyright (C) 2004, 2006, 2007, 2008, 2009 Free Software Foundation, Inc. # This file is distributed under the same license as the xkeyboard-config package. # # Andras Timar <timar@fsf.hu>, 2004. # Szilveszter Farkas <Szilveszter.Farkas@gmail.com>, 2006. -# Gabor Kelemen <kelemeng@gnome.hu>, 2006, 2007, 2008. +# Gabor Kelemen <kelemeng@gnome.hu>, 2006, 2007, 2008, 2009. msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.4-pre1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2008-09-15 23:52+0100\n" -"PO-Revision-Date: 2008-09-20 23:37+0200\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 00:22+0200\n" "Last-Translator: Gabor Kelemen <kelemeng@gnome.hu>\n" "Language-Team: Hungarian <translation-team-hu@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" @@ -19,2607 +19,2775 @@ msgstr "" "X-Generator: KBabel 1.11.4\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: ../rules/base.xml.in.h:1 ../rules/evdev.xml.in.h:1 +#: ../rules/base.xml.in.h:1 msgid "(F)" msgstr "(F)" -#: ../rules/base.xml.in.h:2 ../rules/evdev.xml.in.h:2 +#: ../rules/base.xml.in.h:2 msgid "(Legacy) Alternative" msgstr "(Hagyományos) AlternatÃv" -#: ../rules/base.xml.in.h:3 ../rules/evdev.xml.in.h:3 +#: ../rules/base.xml.in.h:3 msgid "(Legacy) Alternative, Sun dead keys" msgstr "(Hagyományos) AlternatÃv, Sun halott billentyűk" -#: ../rules/base.xml.in.h:4 ../rules/evdev.xml.in.h:4 +#: ../rules/base.xml.in.h:4 msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(Hagyományos) AlternatÃv, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:5 ../rules/evdev.xml.in.h:5 +#: ../rules/base.xml.in.h:5 msgid "101/104 key Compatible" msgstr "101/104 gomb kompatibilis" -#: ../rules/base.xml.in.h:6 ../rules/evdev.xml.in.h:6 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "101/qwerty/vesszÅ‘/Halott billentyűk" -#: ../rules/base.xml.in.h:7 ../rules/evdev.xml.in.h:7 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "101/qwerty/vesszÅ‘/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:8 ../rules/evdev.xml.in.h:8 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "101/qwerty/pont/Halott billentyűk" -#: ../rules/base.xml.in.h:9 ../rules/evdev.xml.in.h:9 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "101/qwerty/pont/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:10 ../rules/evdev.xml.in.h:10 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "101/qwertz/vesszÅ‘/Halott billentyűk" -#: ../rules/base.xml.in.h:11 ../rules/evdev.xml.in.h:11 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "101/qwertz/vesszÅ‘/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:12 ../rules/evdev.xml.in.h:12 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "101/qwertz/pont/Halott billentyűk" -#: ../rules/base.xml.in.h:13 ../rules/evdev.xml.in.h:13 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "101/qwertz/pont/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:14 ../rules/evdev.xml.in.h:14 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "102/qwerty/vesszÅ‘/Halott billentyűk" -#: ../rules/base.xml.in.h:15 ../rules/evdev.xml.in.h:15 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "102/qwerty/vesszÅ‘/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:16 ../rules/evdev.xml.in.h:16 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "102/qwerty/pont/Halott billentyűk" -#: ../rules/base.xml.in.h:17 ../rules/evdev.xml.in.h:17 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "102/qwerty/pont/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:18 ../rules/evdev.xml.in.h:18 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "102/qwertz/vesszÅ‘/Halott billentyűk" -#: ../rules/base.xml.in.h:19 ../rules/evdev.xml.in.h:19 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "102/qwertz/vesszÅ‘/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:20 ../rules/evdev.xml.in.h:20 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "102/qwertz/pont/Halott billentyűk" -#: ../rules/base.xml.in.h:21 ../rules/evdev.xml.in.h:21 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "102/qwertz/pont/Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:22 ../rules/evdev.xml.in.h:22 +#: ../rules/base.xml.in.h:22 +msgid "2" +msgstr "2" + +#: ../rules/base.xml.in.h:23 +msgid "4" +msgstr "4" + +#: ../rules/base.xml.in.h:24 +msgid "5" +msgstr "5" + +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:23 ../rules/evdev.xml.in.h:23 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:24 ../rules/evdev.xml.in.h:24 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech Wireless Desktop RFKB-23" -#: ../rules/base.xml.in.h:25 ../rules/evdev.xml.in.h:25 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI szabvány" -#: ../rules/base.xml.in.h:26 ../rules/evdev.xml.in.h:26 -msgid "ATM/phone-style hexadecimal keypad" -msgstr "ATM/telefon stÃlusú hexadecimális billentyűzet" +#: ../rules/base.xml.in.h:29 +msgid "ATM/phone-style" +msgstr "ATM/telefon stÃlusú" -#: ../rules/base.xml.in.h:27 ../rules/evdev.xml.in.h:27 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:28 ../rules/evdev.xml.in.h:28 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:29 ../rules/evdev.xml.in.h:29 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:30 ../rules/evdev.xml.in.h:30 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Acer noteszgép" -#: ../rules/base.xml.in.h:31 ../rules/evdev.xml.in.h:31 -msgid "Add the EuroSign to the 2 key." -msgstr "Az Euro jel hozzáadása a 2 billentyűhöz." - -#: ../rules/base.xml.in.h:32 ../rules/evdev.xml.in.h:32 -msgid "Add the EuroSign to the 4 key." -msgstr "Az Euro jel hozzáadása a 4 billentyűhöz." +#: ../rules/base.xml.in.h:34 +msgid "Add the standard behavior to Menu key" +msgstr "A standard funkcionalitás hozzáadása a Menü billentyűhöz" -#: ../rules/base.xml.in.h:33 ../rules/evdev.xml.in.h:33 -msgid "Add the EuroSign to the 5 key." -msgstr "Az Euro jel hozzáadása az 5 billentyűhöz." +#: ../rules/base.xml.in.h:35 +msgid "Adding Esperanto circumflexes (supersigno)" +msgstr "Eszperantó circumflexek hozzáadása" -#: ../rules/base.xml.in.h:34 ../rules/evdev.xml.in.h:34 -msgid "Add the EuroSign to the E key." -msgstr "Az Euro jel hozzáadása az E billentyűhöz." - -#: ../rules/base.xml.in.h:35 ../rules/evdev.xml.in.h:35 -msgid "Add the standard behavior to Menu key." -msgstr "A standard funkcionalitás hozzáadása a Menü gombhoz." - -#: ../rules/base.xml.in.h:36 ../rules/evdev.xml.in.h:36 -msgid "Adding the EuroSign to certain keys" +#: ../rules/base.xml.in.h:36 +msgid "Adding EuroSign to certain keys" msgstr "Az Euro jel hozzáadása bizonyos billentyűkhöz" -#: ../rules/base.xml.in.h:37 ../rules/evdev.xml.in.h:37 +#: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" msgstr "Advance Scorpius KI" -#: ../rules/base.xml.in.h:38 ../rules/evdev.xml.in.h:38 +#: ../rules/base.xml.in.h:38 msgid "Afg" msgstr "Afg" -#: ../rules/base.xml.in.h:39 ../rules/evdev.xml.in.h:39 +#: ../rules/base.xml.in.h:39 msgid "Afghanistan" msgstr "Afganisztán" -#: ../rules/base.xml.in.h:40 ../rules/evdev.xml.in.h:40 +#: ../rules/base.xml.in.h:40 msgid "Akan" msgstr "akan" -#: ../rules/base.xml.in.h:41 ../rules/evdev.xml.in.h:41 +#: ../rules/base.xml.in.h:41 msgid "Alb" msgstr "Alb" -#: ../rules/base.xml.in.h:42 ../rules/evdev.xml.in.h:42 +#: ../rules/base.xml.in.h:42 msgid "Albania" msgstr "Albánia" -#: ../rules/base.xml.in.h:43 ../rules/evdev.xml.in.h:43 -msgid "Alt and Meta are on the Alt keys." -msgstr "Az Alt és Meta az Alt billentyűkön." +#: ../rules/base.xml.in.h:43 +msgid "Alt and Meta are on Alt keys" +msgstr "Az Alt és Meta az Alt billentyűkön" -#: ../rules/base.xml.in.h:44 ../rules/evdev.xml.in.h:44 -msgid "Alt is mapped to the right Win-key and Super to Menu." -msgstr "Az Alt a jobb Win billentyűhöz van rendelve és a Super a menühöz." +#: ../rules/base.xml.in.h:44 +msgid "Alt is mapped to Right Win, Super to Menu" +msgstr "Az Alt a jobb Win billentyűhöz van rendelve, a Super a Menühöz" -#: ../rules/base.xml.in.h:45 ../rules/evdev.xml.in.h:45 -msgid "Alt+CapsLock changes layout." -msgstr "Az Alt+CapsLock kombináció megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:45 +msgid "Alt+CapsLock" +msgstr "Alt+CapsLock" -#: ../rules/base.xml.in.h:46 ../rules/evdev.xml.in.h:46 -msgid "Alt+Ctrl change layout." -msgstr "Az Alt+Ctrl kombináció kiosztást vált." +#: ../rules/base.xml.in.h:46 +msgid "Alt+Ctrl" +msgstr "Alt+Ctrl" -#: ../rules/base.xml.in.h:47 ../rules/evdev.xml.in.h:47 -msgid "Alt+Shift change layout." -msgstr "Az Alt+Shift kombináció kiosztást vált." +#: ../rules/base.xml.in.h:47 +msgid "Alt+Shift" +msgstr "Alt+Shift" -#: ../rules/base.xml.in.h:48 ../rules/evdev.xml.in.h:48 +#: ../rules/base.xml.in.h:48 +msgid "Alt+Space" +msgstr "Alt+Szóköz" + +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:49 ../rules/evdev.xml.in.h:49 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Az Alt/Win billentyűk viselkedése" -#: ../rules/base.xml.in.h:50 ../rules/evdev.xml.in.h:50 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "AlternatÃv" -#: ../rules/base.xml.in.h:51 ../rules/evdev.xml.in.h:51 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "AlternatÃv keleti" -#: ../rules/base.xml.in.h:52 ../rules/evdev.xml.in.h:52 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "AlternatÃv fonetikus" -#: ../rules/base.xml.in.h:53 ../rules/evdev.xml.in.h:53 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "AlternatÃv nemzetközi (korábban us_intl)" -#: ../rules/base.xml.in.h:54 ../rules/evdev.xml.in.h:54 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "AlternatÃv, Sun halott billentyűk" -#: ../rules/base.xml.in.h:55 ../rules/evdev.xml.in.h:55 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "AlternatÃv, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:56 ../rules/evdev.xml.in.h:56 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "AlternatÃv, csak latin-9" -#: ../rules/base.xml.in.h:57 ../rules/evdev.xml.in.h:57 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "And" -#: ../rules/base.xml.in.h:58 ../rules/evdev.xml.in.h:58 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Andorra" -#: ../rules/base.xml.in.h:59 ../rules/evdev.xml.in.h:59 +#: ../rules/base.xml.in.h:60 +msgid "Any Alt key" +msgstr "Bármely Alt billentyű" + +#: ../rules/base.xml.in.h:61 +msgid "Any Win key" +msgstr "Bármely Win billentyű" + +#: ../rules/base.xml.in.h:62 +msgid "Any Win key (while pressed)" +msgstr "Bármely Win billentyű (lenyomva tartva)" + +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Aposztróf (') változat" -#: ../rules/base.xml.in.h:60 ../rules/evdev.xml.in.h:60 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:61 ../rules/evdev.xml.in.h:61 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Apple noteszgép" -#: ../rules/base.xml.in.h:62 ../rules/evdev.xml.in.h:62 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ara" -#: ../rules/base.xml.in.h:63 ../rules/evdev.xml.in.h:63 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Arab" -#: ../rules/base.xml.in.h:64 ../rules/evdev.xml.in.h:64 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Arm" -#: ../rules/base.xml.in.h:65 ../rules/evdev.xml.in.h:65 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "Örményország" -#: ../rules/base.xml.in.h:66 ../rules/evdev.xml.in.h:66 +#: ../rules/base.xml.in.h:70 msgid "Asturian variant with bottom-dot H and bottom-dot L" msgstr "Asztúri változat középsÅ‘ pontos H és L karakterrel" -#: ../rules/base.xml.in.h:67 ../rules/evdev.xml.in.h:67 +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Asus noteszgép" -#: ../rules/base.xml.in.h:68 ../rules/evdev.xml.in.h:68 +#: ../rules/base.xml.in.h:72 +msgid "At bottom left" +msgstr "Bal oldalt, alul" + +#: ../rules/base.xml.in.h:73 +msgid "At left of 'A'" +msgstr "Az „Aâ€-tól balra" + +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Aze" -#: ../rules/base.xml.in.h:69 ../rules/evdev.xml.in.h:69 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Azerbajdzsán" -#: ../rules/base.xml.in.h:70 ../rules/evdev.xml.in.h:70 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 wireless Internet billentyűzet" -#: ../rules/base.xml.in.h:71 ../rules/evdev.xml.in.h:71 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:72 ../rules/evdev.xml.in.h:72 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:73 ../rules/evdev.xml.in.h:73 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:74 ../rules/evdev.xml.in.h:74 +#: ../rules/base.xml.in.h:80 msgid "BTC 6301URF" msgstr "BTC 6301URF" -#: ../rules/base.xml.in.h:75 ../rules/evdev.xml.in.h:75 +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:76 ../rules/evdev.xml.in.h:76 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:77 ../rules/evdev.xml.in.h:77 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:78 ../rules/evdev.xml.in.h:78 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:79 ../rules/evdev.xml.in.h:79 +#: ../rules/base.xml.in.h:85 +msgid "BTC 9116U Mini Wireless Internet and Gaming" +msgstr "BTC 9116U Mini Wireless internet és játék" + +#: ../rules/base.xml.in.h:86 msgid "Baltic+" msgstr "Balti+" -#: ../rules/base.xml.in.h:80 ../rules/evdev.xml.in.h:80 +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Ban" -#: ../rules/base.xml.in.h:81 ../rules/evdev.xml.in.h:81 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Banglades" -#: ../rules/base.xml.in.h:82 ../rules/evdev.xml.in.h:82 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "BaskÃr" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:83 ../rules/evdev.xml.in.h:83 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Fehéroroszország" -#: ../rules/base.xml.in.h:84 ../rules/evdev.xml.in.h:84 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgium" -#: ../rules/base.xml.in.h:85 ../rules/evdev.xml.in.h:85 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:86 ../rules/evdev.xml.in.h:86 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:87 ../rules/evdev.xml.in.h:87 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:88 ../rules/evdev.xml.in.h:88 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengáli" -#: ../rules/base.xml.in.h:89 ../rules/evdev.xml.in.h:89 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengáli probhat" -#: ../rules/base.xml.in.h:90 ../rules/evdev.xml.in.h:90 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomikus, Dvorak kiosztás" -#: ../rules/base.xml.in.h:91 ../rules/evdev.xml.in.h:91 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomikus, Dvorak kiosztás, csak latin-9" -#: ../rules/base.xml.in.h:92 ../rules/evdev.xml.in.h:92 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:93 ../rules/evdev.xml.in.h:93 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:94 ../rules/evdev.xml.in.h:94 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhután" -#: ../rules/base.xml.in.h:95 ../rules/evdev.xml.in.h:95 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Bibliai héber (Tiro)" -#: ../rules/base.xml.in.h:96 ../rules/evdev.xml.in.h:96 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:97 ../rules/evdev.xml.in.h:97 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:98 ../rules/evdev.xml.in.h:98 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosznia és Hercegovina" -#: ../rules/base.xml.in.h:99 ../rules/evdev.xml.in.h:99 -msgid "Both Alt keys together change layout." -msgstr "A két Alt billentyű együtt változtatja meg a kiosztást." +#: ../rules/base.xml.in.h:107 +msgid "Both Alt keys together" +msgstr "A két Alt billentyű együtt" -#: ../rules/base.xml.in.h:100 ../rules/evdev.xml.in.h:100 -msgid "Both Ctrl keys together change layout." -msgstr "A két Ctrl billentyű együtt változtatja meg a kiosztást." +#: ../rules/base.xml.in.h:108 +msgid "Both Ctrl keys together" +msgstr "A két Ctrl billentyű együtt" -#: ../rules/base.xml.in.h:101 ../rules/evdev.xml.in.h:101 -msgid "Both Shift keys together change layout." -msgstr "A két Shift billentyű együtt változtatja meg a kiosztást." +#: ../rules/base.xml.in.h:109 +msgid "Both Shift keys together" +msgstr "A két Shift billentyű együtt" -#: ../rules/base.xml.in.h:102 ../rules/evdev.xml.in.h:102 -msgid "Both Win-keys switch layout while pressed." -msgstr "A két Win billentyű lenyomva tartva megváltoztatja a kiosztást." - -#: ../rules/base.xml.in.h:103 ../rules/evdev.xml.in.h:103 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:104 ../rules/evdev.xml.in.h:104 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:105 ../rules/evdev.xml.in.h:105 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "BrazÃlia" -#: ../rules/base.xml.in.h:106 ../rules/evdev.xml.in.h:106 -msgid "Brazilian ABNT2" -msgstr "Brazil ABNT2" +#: ../rules/base.xml.in.h:113 +msgid "Breton" +msgstr "Breton" -#: ../rules/base.xml.in.h:107 ../rules/evdev.xml.in.h:107 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:108 ../rules/evdev.xml.in.h:108 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet billentyűzet" -#: ../rules/base.xml.in.h:109 ../rules/evdev.xml.in.h:109 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:110 ../rules/evdev.xml.in.h:110 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgária" -#: ../rules/base.xml.in.h:111 ../rules/evdev.xml.in.h:111 +#: ../rules/base.xml.in.h:118 +msgid "CRULP" +msgstr "CRULP" + +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kambodzsa" -#: ../rules/base.xml.in.h:112 ../rules/evdev.xml.in.h:112 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:113 ../rules/evdev.xml.in.h:113 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:114 ../rules/evdev.xml.in.h:114 -msgid "Caps Lock is Compose." -msgstr "Caps Lock Compose-ként működik." +#: ../rules/base.xml.in.h:122 +msgid "Caps Lock" +msgstr "Caps Lock" -#: ../rules/base.xml.in.h:115 ../rules/evdev.xml.in.h:115 -msgid "CapsLock LED shows alternative layout." -msgstr "A CapsLock LED-je mutassa az alternatÃv csoportot." +#: ../rules/base.xml.in.h:123 +msgid "CapsLock" +msgstr "CapsLock" -#: ../rules/base.xml.in.h:116 ../rules/evdev.xml.in.h:116 -msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock." -msgstr "A CapsLock Shiftként működik zárolással. A Shift szünetelteti a nagybetűsÃtést." +#: ../rules/base.xml.in.h:124 +msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" +msgstr "A CapsLock (az elsÅ‘ kiosztásra), Shift+CapsLock (az utolsó kiosztásra)" -#: ../rules/base.xml.in.h:117 ../rules/evdev.xml.in.h:117 -msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock." -msgstr "A CapsLock Shiftként működik zárolással. A Shift nem befolyásolja a nagybetűsÃtést." +#: ../rules/base.xml.in.h:125 +msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" +msgstr "CapsLock (lenyomva tartva), Alt+CapsLock végzi az eredeti nagybetűsÃtési műveletet" -#: ../rules/base.xml.in.h:118 ../rules/evdev.xml.in.h:118 -msgid "CapsLock just locks the Shift modifier." -msgstr "A CapsLock csak zárolja a Shift módosÃtót." +#: ../rules/base.xml.in.h:126 +msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" +msgstr "A CapsLock Shiftként működik zárolással. A Shift „szünetelteti†a nagybetűsÃtést" -#: ../rules/base.xml.in.h:119 ../rules/evdev.xml.in.h:119 -msgid "CapsLock key behavior" -msgstr "A CapsLock billentyű használati módja" +#: ../rules/base.xml.in.h:127 +msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" +msgstr "A CapsLock Shiftként működik zárolással. A Shift nem befolyásolja a nagybetűsÃtést" -#: ../rules/base.xml.in.h:120 ../rules/evdev.xml.in.h:120 -msgid "CapsLock key changes layout." -msgstr "A CapsLock billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "A Caps Lock letiltva" -#: ../rules/base.xml.in.h:121 ../rules/evdev.xml.in.h:121 -msgid "CapsLock switch to first layout, Shift+CapsLock switch to last layout." -msgstr "A CapsLock vált az elsÅ‘ kiosztásra, a Shift+CapsLock az utolsó kiosztásra." +#: ../rules/base.xml.in.h:129 +msgid "CapsLock key behavior" +msgstr "A CapsLock billentyű használati módja" -#: ../rules/base.xml.in.h:122 ../rules/evdev.xml.in.h:122 -msgid "CapsLock toggles Shift so all keys are affected." -msgstr "A CapsLock átváltja a Shift-et, Ãgy minden billentyű érintett." +#: ../rules/base.xml.in.h:130 +msgid "CapsLock toggles Shift so all keys are affected" +msgstr "A CapsLock átváltja a Shiftet, Ãgy minden billentyű érintett" -#: ../rules/base.xml.in.h:123 ../rules/evdev.xml.in.h:123 -msgid "CapsLock toggles normal capitalization of alphabetic characters." -msgstr "A CapsLock átváltja az ábécé szerinti karakterek nagybetűsÃtését." +#: ../rules/base.xml.in.h:131 +msgid "CapsLock toggles normal capitalization of alphabetic characters" +msgstr "A CapsLock átváltja a betűkarakterek normál kis- és nagybetűit" -#: ../rules/base.xml.in.h:124 ../rules/evdev.xml.in.h:124 -msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock." -msgstr "A CapsLock belsÅ‘ nagybetűkre váltást használ. A Shift szünetelteti a nagybetűsÃtést." +#: ../rules/base.xml.in.h:132 +msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" +msgstr "A CapsLock belsÅ‘ nagybetűkre váltást használ. A Shift „szünetelteti†a nagybetűsÃtést" -#: ../rules/base.xml.in.h:125 ../rules/evdev.xml.in.h:125 -msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock." -msgstr "A CapsLock belsÅ‘ nagybetűkre váltást használ. A Shift nem befolyásolja a nagybetűsÃtést." +#: ../rules/base.xml.in.h:133 +msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" +msgstr "A CapsLock belsÅ‘ nagybetűkre váltást használ. A Shift nem befolyásolja a nagybetűsÃtést" -#: ../rules/base.xml.in.h:126 ../rules/evdev.xml.in.h:126 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalán változat középsÅ‘ pontos L karakterrel" -#: ../rules/base.xml.in.h:127 ../rules/evdev.xml.in.h:127 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilla" -#: ../rules/base.xml.in.h:128 ../rules/evdev.xml.in.h:128 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:129 ../rules/evdev.xml.in.h:129 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:130 ../rules/evdev.xml.in.h:130 +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:131 ../rules/evdev.xml.in.h:131 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (másik lehetÅ‘ség)" -#: ../rules/base.xml.in.h:132 ../rules/evdev.xml.in.h:132 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:133 ../rules/evdev.xml.in.h:133 +#: ../rules/base.xml.in.h:142 +msgid "Cherry CyMotion Expert" +msgstr "Cherry CyMotion Expert" + +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:134 ../rules/evdev.xml.in.h:134 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:135 ../rules/evdev.xml.in.h:135 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet billentyűzet" -#: ../rules/base.xml.in.h:136 ../rules/evdev.xml.in.h:136 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:137 ../rules/evdev.xml.in.h:137 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:138 ../rules/evdev.xml.in.h:138 +#: ../rules/base.xml.in.h:148 +msgid "Chicony KU-0420" +msgstr "Chicony KU-0420" + +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "KÃna" -#: ../rules/base.xml.in.h:139 ../rules/evdev.xml.in.h:139 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Csuvas" -#: ../rules/base.xml.in.h:140 ../rules/evdev.xml.in.h:140 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Csuvas latin" -#: ../rules/base.xml.in.h:141 ../rules/evdev.xml.in.h:141 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klasszikus" -#: ../rules/base.xml.in.h:142 ../rules/evdev.xml.in.h:142 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Klasszikus Dvorak" -#: ../rules/base.xml.in.h:143 ../rules/evdev.xml.in.h:143 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:144 ../rules/evdev.xml.in.h:144 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:145 ../rules/evdev.xml.in.h:145 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:146 ../rules/evdev.xml.in.h:146 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access billentyűzet" -#: ../rules/base.xml.in.h:147 ../rules/evdev.xml.in.h:147 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet billentyűzet (13 gombos)" -#: ../rules/base.xml.in.h:148 ../rules/evdev.xml.in.h:148 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet billentyűzet (18 gombos)" -#: ../rules/base.xml.in.h:149 ../rules/evdev.xml.in.h:149 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet billentyűzet (7 gombos)" -#: ../rules/base.xml.in.h:150 ../rules/evdev.xml.in.h:150 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq billentyűzet" -#: ../rules/base.xml.in.h:151 ../rules/evdev.xml.in.h:151 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" -msgstr "A kombináló (Compose) billentyű helyzete" +msgstr "A kombináló (Compose) billentyű helye" -#: ../rules/base.xml.in.h:152 ../rules/evdev.xml.in.h:152 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongói Demokratikus Köztársaság" -#: ../rules/base.xml.in.h:153 ../rules/evdev.xml.in.h:153 -msgid "Control is mapped to the Win-keys (and the usual Ctrl keys)." -msgstr "A Control billentyű a Win billentyűkhöz van rendelve (és a szokásos Ctrl billentyűkhöz)." +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Control + Alt + Backspace" -#: ../rules/base.xml.in.h:154 ../rules/evdev.xml.in.h:154 -msgid "Croatia" -msgstr "Horvátország" +#: ../rules/base.xml.in.h:165 +msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" +msgstr "A Control az Alt billentyűkhöz, az Alt a Win billentyűkhöz van rendelve" + +#: ../rules/base.xml.in.h:166 +msgid "Control is mapped to Win keys (and the usual Ctrl keys)" +msgstr "A Control a Win billentyűkhöz van rendelve (és a szokásos Ctrl billentyűkhöz)" + +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "KrÃmi tatár (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:155 ../rules/evdev.xml.in.h:155 -msgid "Ctrl key at bottom left" -msgstr "Ctrl billentyű bal oldalt, alul" +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "KrÃmi tatár (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:156 ../rules/evdev.xml.in.h:156 -msgid "Ctrl key at left of 'A'" -msgstr "Ctrl billentyű az \"A\"-tól balra" +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "KrÃmi tatár (török Alt-Q)" -#: ../rules/base.xml.in.h:157 ../rules/evdev.xml.in.h:157 +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "KrÃmi tatár (török F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "KrÃmi tatár (török Q)" + +#: ../rules/base.xml.in.h:173 +msgid "Croatia" +msgstr "Horvátország" + +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Ctrl billentyű helyzete" -#: ../rules/base.xml.in.h:158 ../rules/evdev.xml.in.h:158 -msgid "Ctrl+Shift change layout." -msgstr "A Ctrl+Shift kombináció kiosztást vált." +#: ../rules/base.xml.in.h:175 +msgid "Ctrl+Shift" +msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:159 ../rules/evdev.xml.in.h:159 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cirill" -#: ../rules/base.xml.in.h:160 ../rules/evdev.xml.in.h:160 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cirill, »csúcsos« idézÅ‘jelekkel" -#: ../rules/base.xml.in.h:161 ../rules/evdev.xml.in.h:161 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cirill, a Z és a ZHE felcserélve" -#: ../rules/base.xml.in.h:162 ../rules/evdev.xml.in.h:162 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:163 ../rules/evdev.xml.in.h:163 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Csehország" -#: ../rules/base.xml.in.h:164 ../rules/evdev.xml.in.h:164 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:165 ../rules/evdev.xml.in.h:165 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:166 ../rules/evdev.xml.in.h:166 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:167 ../rules/evdev.xml.in.h:167 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Halott vesszÅ‘ (´) ékezet" -#: ../rules/base.xml.in.h:168 ../rules/evdev.xml.in.h:168 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Halott grave (`) ékezet" -#: ../rules/base.xml.in.h:169 ../rules/evdev.xml.in.h:169 -msgid "Default numeric keypad keys." -msgstr "Alapértelmezett számbillentyűk." +#: ../rules/base.xml.in.h:187 +msgid "Default numeric keypad keys" +msgstr "Alapértelmezett számbillentyűk" -#: ../rules/base.xml.in.h:170 ../rules/evdev.xml.in.h:170 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:171 ../rules/evdev.xml.in.h:171 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-gombos PC" -#: ../rules/base.xml.in.h:172 ../rules/evdev.xml.in.h:172 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Inspiron 6xxx/8xxx noteszgép" -#: ../rules/base.xml.in.h:173 ../rules/evdev.xml.in.h:173 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Precision M sorozatú noteszgép" -#: ../rules/base.xml.in.h:174 ../rules/evdev.xml.in.h:174 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude sorozatú noteszgép" -#: ../rules/base.xml.in.h:175 ../rules/evdev.xml.in.h:175 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:176 ../rules/evdev.xml.in.h:176 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:177 ../rules/evdev.xml.in.h:177 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:178 ../rules/evdev.xml.in.h:178 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB multimédia-billentyűzet" -#: ../rules/base.xml.in.h:179 ../rules/evdev.xml.in.h:179 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Dánia" -#: ../rules/base.xml.in.h:180 ../rules/evdev.xml.in.h:180 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:181 ../rules/evdev.xml.in.h:181 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop billentyűzet" -#: ../rules/base.xml.in.h:182 ../rules/evdev.xml.in.h:182 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 sorozat" -#: ../rules/base.xml.in.h:183 ../rules/evdev.xml.in.h:183 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak-féle" -#: ../rules/base.xml.in.h:184 ../rules/evdev.xml.in.h:184 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (UK központozás)" -#: ../rules/base.xml.in.h:185 ../rules/evdev.xml.in.h:185 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Nemzetközi Dvorak" -#: ../rules/base.xml.in.h:186 ../rules/evdev.xml.in.h:186 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorak, lengyel idézÅ‘jelek az \"1/!\" billentyűn" +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Dvorak, lengyel idézÅ‘jelek az 1 billentyűn" -#: ../rules/base.xml.in.h:187 ../rules/evdev.xml.in.h:187 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, lengyel idézÅ‘jelek az idézÅ‘jel billentyűn" -#: ../rules/base.xml.in.h:188 ../rules/evdev.xml.in.h:188 +#: ../rules/base.xml.in.h:206 +msgid "E" +msgstr "E" + +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Keleti" -#: ../rules/base.xml.in.h:189 ../rules/evdev.xml.in.h:189 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Halott billentyűk tiltása" -#: ../rules/base.xml.in.h:190 ../rules/evdev.xml.in.h:190 +#: ../rules/base.xml.in.h:209 +msgid "Enable extra typographic characters" +msgstr "Extra tipográfiai karakterek engedélyezése" + +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "Angol" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:191 ../rules/evdev.xml.in.h:191 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enter a számbillentyűzeten" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:192 ../rules/evdev.xml.in.h:192 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomikus" -#: ../rules/base.xml.in.h:193 ../rules/evdev.xml.in.h:193 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:194 ../rules/evdev.xml.in.h:194 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "eszperantó" -#: ../rules/base.xml.in.h:195 ../rules/evdev.xml.in.h:195 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:196 ../rules/evdev.xml.in.h:196 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Észtország" -#: ../rules/base.xml.in.h:197 ../rules/evdev.xml.in.h:197 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:198 ../rules/evdev.xml.in.h:198 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiópia" -#: ../rules/base.xml.in.h:199 ../rules/evdev.xml.in.h:199 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev által felügyelt billentyűzet" -#: ../rules/base.xml.in.h:200 ../rules/evdev.xml.in.h:200 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:201 ../rules/evdev.xml.in.h:201 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "ewe" -#: ../rules/base.xml.in.h:202 ../rules/evdev.xml.in.h:202 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "KibÅ‘vÃtett" -#: ../rules/base.xml.in.h:203 ../rules/evdev.xml.in.h:203 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "KibÅ‘vÃtett - Win billentyűk" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "KibÅ‘vÃtett visszaper" -#: ../rules/base.xml.in.h:204 ../rules/evdev.xml.in.h:204 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-betűs (F) változat" -#: ../rules/base.xml.in.h:205 ../rules/evdev.xml.in.h:205 +#: ../rules/base.xml.in.h:228 +msgid "FL90" +msgstr "FL90" + +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:206 ../rules/evdev.xml.in.h:206 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Feröer szigetek" -#: ../rules/base.xml.in.h:207 ../rules/evdev.xml.in.h:207 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:208 ../rules/evdev.xml.in.h:208 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finnország" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:211 ../rules/evdev.xml.in.h:211 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Negyedik szintű billentyű absztrakt elválasztókkal" -#: ../rules/base.xml.in.h:212 ../rules/evdev.xml.in.h:212 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Negyedik szintű billentyű vesszÅ‘vel" -#: ../rules/base.xml.in.h:213 ../rules/evdev.xml.in.h:213 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Negyedik szintű billentyű ponttal" -#: ../rules/base.xml.in.h:214 ../rules/evdev.xml.in.h:214 +#: ../rules/base.xml.in.h:238 +msgid "Four-level key with dot, latin-9 restriction" +msgstr "Negyedik szintű billentyű ponttal, latin-9 korlátozás" + +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Negyedik szintű billentyű momayyez-val" -#: ../rules/base.xml.in.h:215 ../rules/evdev.xml.in.h:215 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:216 ../rules/evdev.xml.in.h:216 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Franciaország" -#: ../rules/base.xml.in.h:217 ../rules/evdev.xml.in.h:217 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Francia" -#: ../rules/base.xml.in.h:218 ../rules/evdev.xml.in.h:218 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Francia (Macintosh)" -#: ../rules/base.xml.in.h:219 ../rules/evdev.xml.in.h:219 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Francia (hagyományos)" -#: ../rules/base.xml.in.h:220 ../rules/evdev.xml.in.h:220 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Francia Dvorak" -#: ../rules/base.xml.in.h:221 ../rules/evdev.xml.in.h:221 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Francia, Sun halott billentyűk" -#: ../rules/base.xml.in.h:222 ../rules/evdev.xml.in.h:222 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Francia, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:223 ../rules/evdev.xml.in.h:223 -msgid "Fujitsu-Siemens Computers AMILO A1667G laptop" -msgstr "Fujitsu-Siemens Computers AMILO A1667G noteszgép" +#: ../rules/base.xml.in.h:248 +msgid "Fujitsu-Siemens Computers AMILO laptop" +msgstr "Fujitsu-Siemens Computers AMILO noteszgép" -#: ../rules/base.xml.in.h:224 ../rules/evdev.xml.in.h:224 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:225 ../rules/evdev.xml.in.h:225 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:226 ../rules/evdev.xml.in.h:226 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "ga" -#: ../rules/base.xml.in.h:227 ../rules/evdev.xml.in.h:227 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Ãltalános 101 gombos PC" -#: ../rules/base.xml.in.h:228 ../rules/evdev.xml.in.h:228 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Ãltalános 102 gombos (nemzetközi) PC" -#: ../rules/base.xml.in.h:229 ../rules/evdev.xml.in.h:229 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Ãltalános 104 gombos PC" -#: ../rules/base.xml.in.h:230 ../rules/evdev.xml.in.h:230 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Ãltalános 105 gombos (nemzetközi) PC" -#: ../rules/base.xml.in.h:231 ../rules/evdev.xml.in.h:231 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:232 ../rules/evdev.xml.in.h:232 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:233 ../rules/evdev.xml.in.h:233 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:234 ../rules/evdev.xml.in.h:234 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:235 ../rules/evdev.xml.in.h:235 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:236 ../rules/evdev.xml.in.h:236 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Grúzia" -#: ../rules/base.xml.in.h:237 ../rules/evdev.xml.in.h:237 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Grúz" -#: ../rules/base.xml.in.h:238 ../rules/evdev.xml.in.h:238 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Grúz AZERTY Tskapo" -#: ../rules/base.xml.in.h:239 ../rules/evdev.xml.in.h:239 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Német (Macintosh)" -#: ../rules/base.xml.in.h:240 ../rules/evdev.xml.in.h:240 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Német, Sun halott billentyűk" -#: ../rules/base.xml.in.h:241 ../rules/evdev.xml.in.h:241 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Német, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:242 ../rules/evdev.xml.in.h:242 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Németország" -#: ../rules/base.xml.in.h:243 ../rules/evdev.xml.in.h:243 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:244 ../rules/evdev.xml.in.h:244 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghána" -#: ../rules/base.xml.in.h:245 ../rules/evdev.xml.in.h:245 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:246 ../rules/evdev.xml.in.h:246 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Görögország" -#: ../rules/base.xml.in.h:247 ../rules/evdev.xml.in.h:247 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Csoport átváltása a szorzás/osztás billentyűn" -#: ../rules/base.xml.in.h:248 ../rules/evdev.xml.in.h:248 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:249 ../rules/evdev.xml.in.h:249 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:250 ../rules/evdev.xml.in.h:250 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gudzsarati" -#: ../rules/base.xml.in.h:251 ../rules/evdev.xml.in.h:251 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:252 ../rules/evdev.xml.in.h:252 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:253 ../rules/evdev.xml.in.h:253 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Forgás" -#: ../rules/base.xml.in.h:254 ../rules/evdev.xml.in.h:254 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking billentyűzet" -#: ../rules/base.xml.in.h:255 ../rules/evdev.xml.in.h:255 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking billenytűzet Mac-hez" -#: ../rules/base.xml.in.h:256 ../rules/evdev.xml.in.h:256 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "hausza" -#: ../rules/base.xml.in.h:257 ../rules/evdev.xml.in.h:257 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet billentyűzet" -#: ../rules/base.xml.in.h:258 ../rules/evdev.xml.in.h:258 -msgid "Hewlett-Packard Internet Keyboard 5181" -msgstr "Hewlett-Packard Internet billentyűzet 5181" - -#: ../rules/base.xml.in.h:259 ../rules/evdev.xml.in.h:259 -msgid "Hewlett-Packard Internet Keyboard 5185" -msgstr "Hewlett-Packard Internet billentyűzet 5185" - -#: ../rules/base.xml.in.h:260 ../rules/evdev.xml.in.h:260 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:261 ../rules/evdev.xml.in.h:261 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:262 ../rules/evdev.xml.in.h:262 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:263 ../rules/evdev.xml.in.h:263 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:264 ../rules/evdev.xml.in.h:264 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:265 ../rules/evdev.xml.in.h:265 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:266 ../rules/evdev.xml.in.h:266 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:267 ../rules/evdev.xml.in.h:267 -msgid "Hewlett-Packard SK-2501 Multimedia Keyboard" -msgstr "Hewlett-Packard SK-2501 multimédia billentyűzet" +#: ../rules/base.xml.in.h:291 +msgid "Hewlett-Packard Pavilion dv5" +msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:268 ../rules/evdev.xml.in.h:268 -msgid "Hewlett-Packard SK-2505 Internet Keyboard" -msgstr "Hewlett-Packard SK-2505 Internet billentyűzet" +#: ../rules/base.xml.in.h:292 +msgid "Hewlett-Packard SK-250x Multimedia Keyboard" +msgstr "Hewlett-Packard SK-250x multimédia billentyűzet" -#: ../rules/base.xml.in.h:269 ../rules/evdev.xml.in.h:269 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:270 ../rules/evdev.xml.in.h:270 +#: ../rules/base.xml.in.h:294 +msgid "Hexadecimal" +msgstr "Hexadecimális" + +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:271 ../rules/evdev.xml.in.h:271 +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Hindi Wx" + +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofon" -#: ../rules/base.xml.in.h:272 ../rules/evdev.xml.in.h:272 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:273 ../rules/evdev.xml.in.h:273 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:274 ../rules/evdev.xml.in.h:274 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:275 ../rules/evdev.xml.in.h:275 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Magyarország" -#: ../rules/base.xml.in.h:276 ../rules/evdev.xml.in.h:276 -msgid "Hyper is mapped to the Win-keys." -msgstr "A Hyper a Win billentyűkhöz van rendelve." +#: ../rules/base.xml.in.h:302 +msgid "Hyper is mapped to Win-keys" +msgstr "A Hyper a Win billentyűkhöz van rendelve" -#: ../rules/base.xml.in.h:277 ../rules/evdev.xml.in.h:277 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:278 ../rules/evdev.xml.in.h:278 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:279 ../rules/evdev.xml.in.h:279 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:280 ../rules/evdev.xml.in.h:280 -msgid "IBM Rapid Access II (alternate option)" -msgstr "IBM Rapid Access II (másik lehetÅ‘ség)" - -#: ../rules/base.xml.in.h:281 ../rules/evdev.xml.in.h:281 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM helytakarékos" -#: ../rules/base.xml.in.h:282 ../rules/evdev.xml.in.h:282 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:283 ../rules/evdev.xml.in.h:283 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, nemzetközi" -#: ../rules/base.xml.in.h:284 ../rules/evdev.xml.in.h:284 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:285 ../rules/evdev.xml.in.h:285 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:286 ../rules/evdev.xml.in.h:286 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO Alternate" -#: ../rules/base.xml.in.h:287 ../rules/evdev.xml.in.h:287 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Izland" -#: ../rules/base.xml.in.h:288 ../rules/evdev.xml.in.h:288 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:289 ../rules/evdev.xml.in.h:289 +#: ../rules/base.xml.in.h:314 +msgid "Include dead tilde" +msgstr "Halott tilde felvétele" + +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:290 ../rules/evdev.xml.in.h:290 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "India" -#: ../rules/base.xml.in.h:291 ../rules/evdev.xml.in.h:291 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Nemzetközi (AltGr halott billentyűkkel)" -#: ../rules/base.xml.in.h:292 ../rules/evdev.xml.in.h:292 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Nemzetközi (halott billentyűkkel)" -#: ../rules/base.xml.in.h:293 ../rules/evdev.xml.in.h:293 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:294 ../rules/evdev.xml.in.h:294 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Irán" -#: ../rules/base.xml.in.h:295 ../rules/evdev.xml.in.h:295 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:296 ../rules/evdev.xml.in.h:296 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Ãrország" -#: ../rules/base.xml.in.h:297 ../rules/evdev.xml.in.h:297 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:298 ../rules/evdev.xml.in.h:298 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:299 ../rules/evdev.xml.in.h:299 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:300 ../rules/evdev.xml.in.h:300 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:301 ../rules/evdev.xml.in.h:301 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:302 ../rules/evdev.xml.in.h:302 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Izrael" -#: ../rules/base.xml.in.h:303 ../rules/evdev.xml.in.h:303 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:304 ../rules/evdev.xml.in.h:304 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Olaszország" -#: ../rules/base.xml.in.h:305 ../rules/evdev.xml.in.h:305 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japán" -#: ../rules/base.xml.in.h:306 ../rules/evdev.xml.in.h:306 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japán (PC-98xx sorozat)" -#: ../rules/base.xml.in.h:307 ../rules/evdev.xml.in.h:307 -msgid "Japanese 106-key" -msgstr "Japán 106 gombos" - -#: ../rules/base.xml.in.h:308 ../rules/evdev.xml.in.h:308 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Japán billentyűzet-beállÃtások" -#: ../rules/base.xml.in.h:309 ../rules/evdev.xml.in.h:309 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:310 ../rules/evdev.xml.in.h:310 +#: ../rules/base.xml.in.h:335 +msgid "Kalmyk" +msgstr "Kalmük" + +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:311 ../rules/evdev.xml.in.h:311 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "A Kana zárolásbillentyű zárol" -#: ../rules/base.xml.in.h:312 ../rules/evdev.xml.in.h:312 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:313 ../rules/evdev.xml.in.h:313 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kasub" -#: ../rules/base.xml.in.h:314 ../rules/evdev.xml.in.h:314 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:315 ../rules/evdev.xml.in.h:315 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "kazah orosszal" -#: ../rules/base.xml.in.h:316 ../rules/evdev.xml.in.h:316 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazahsztán" -#: ../rules/base.xml.in.h:317 ../rules/evdev.xml.in.h:317 -msgid "Keypad" -msgstr "Számbillentyűzet" +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "Billentyűsorozat az X kiszolgáló kilövéséhez" -#: ../rules/base.xml.in.h:318 ../rules/evdev.xml.in.h:318 -msgid "Keypad with unicode additions (arrows and math operators)" -msgstr "Számbillentyűzet Unicode kiegészÃtésekkel (nyilak és műveleti jelek)" +#: ../rules/base.xml.in.h:344 +msgid "Key to choose 3rd level" +msgstr "Billentyű a harmadik szint választásához" -#: ../rules/base.xml.in.h:319 ../rules/evdev.xml.in.h:319 -msgid "Keypad with unicode additions (arrows and math operators). Math operators on default level." -msgstr "Számbillentyűzet Unicode kiegészÃtésekkel (nyilak és műveleti jelek). A műveleti jelek bekapcsolva az alapértelmezett szinten." +#: ../rules/base.xml.in.h:345 +msgid "Key(s) to change layout" +msgstr "A kiosztást megváltoztató billentyűk" -#: ../rules/base.xml.in.h:320 ../rules/evdev.xml.in.h:320 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:321 ../rules/evdev.xml.in.h:321 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Kgz" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:322 ../rules/evdev.xml.in.h:322 -msgid "Kir" -msgstr "Kir" - -#: ../rules/base.xml.in.h:323 ../rules/evdev.xml.in.h:323 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:324 ../rules/evdev.xml.in.h:324 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:325 ../rules/evdev.xml.in.h:325 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Koreai köztársaság" -#: ../rules/base.xml.in.h:326 ../rules/evdev.xml.in.h:326 -msgid "Korean 106-key" -msgstr "Koreai 106 gombos" - -#: ../rules/base.xml.in.h:327 ../rules/evdev.xml.in.h:327 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:328 ../rules/evdev.xml.in.h:328 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurd, (F)" -#: ../rules/base.xml.in.h:329 ../rules/evdev.xml.in.h:329 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurd, arab-latin" -#: ../rules/base.xml.in.h:330 ../rules/evdev.xml.in.h:330 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurd, latin Alt-Q" -#: ../rules/base.xml.in.h:331 ../rules/evdev.xml.in.h:331 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurd, latin Q" -#: ../rules/base.xml.in.h:332 ../rules/evdev.xml.in.h:332 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgizisztán" -#: ../rules/base.xml.in.h:333 ../rules/evdev.xml.in.h:333 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:334 ../rules/evdev.xml.in.h:334 -msgid "LCtrl+LShift change layout." -msgstr "A bal Ctrl + bal Shift kombináció kiosztást vált." - -#: ../rules/base.xml.in.h:335 ../rules/evdev.xml.in.h:335 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:336 ../rules/evdev.xml.in.h:336 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:337 ../rules/evdev.xml.in.h:337 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:338 ../rules/evdev.xml.in.h:338 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laosz" -#: ../rules/base.xml.in.h:339 ../rules/evdev.xml.in.h:339 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Compaq noteszgép (pl. Armada) noteszgép-billentyűzet" -#: ../rules/base.xml.in.h:340 ../rules/evdev.xml.in.h:340 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Compaq noteszgép (pl. Presario) Internet billentyűzet" -#: ../rules/base.xml.in.h:341 ../rules/evdev.xml.in.h:341 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "eMachines m68xx noteszgép" -#: ../rules/base.xml.in.h:342 ../rules/evdev.xml.in.h:342 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latin" -#: ../rules/base.xml.in.h:343 ../rules/evdev.xml.in.h:343 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latin-amerikai" -#: ../rules/base.xml.in.h:344 ../rules/evdev.xml.in.h:344 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latin Unicode" -#: ../rules/base.xml.in.h:345 ../rules/evdev.xml.in.h:345 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latin Unicode qwerty" -#: ../rules/base.xml.in.h:346 ../rules/evdev.xml.in.h:346 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latin qwerty" -#: ../rules/base.xml.in.h:347 ../rules/evdev.xml.in.h:347 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latin unicode" -#: ../rules/base.xml.in.h:348 ../rules/evdev.xml.in.h:348 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latin unicode qwerty" -#: ../rules/base.xml.in.h:349 ../rules/evdev.xml.in.h:349 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latin, »csúcsos« idézÅ‘jelekkel" -#: ../rules/base.xml.in.h:350 ../rules/evdev.xml.in.h:350 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lettország" -#: ../rules/base.xml.in.h:351 ../rules/evdev.xml.in.h:351 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:352 ../rules/evdev.xml.in.h:352 -msgid "Layout switching" -msgstr "Kiosztásváltás" +#: ../rules/base.xml.in.h:376 +msgid "Left Alt" +msgstr "Bal Alt" -#: ../rules/base.xml.in.h:353 ../rules/evdev.xml.in.h:353 -msgid "Left Alt is swapped with left Win-key." -msgstr "A bal Alt fel van cserélve a bal Win billentyűvel." +#: ../rules/base.xml.in.h:377 +msgid "Left Alt (while pressed)" +msgstr "Bal Alt (lenyomva tartva)" -#: ../rules/base.xml.in.h:354 ../rules/evdev.xml.in.h:354 -msgid "Left Alt key changes layout." -msgstr "A bal Alt billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:378 +msgid "Left Alt is swapped with Left Win" +msgstr "A bal Alt fel van cserélve a bal Win billentyűvel" -#: ../rules/base.xml.in.h:355 ../rules/evdev.xml.in.h:355 -msgid "Left Alt key switches layout while pressed." -msgstr "A bal Alt billentyű lenyomva tartva megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:379 +msgid "Left Ctrl" +msgstr "Bal Ctrl" -#: ../rules/base.xml.in.h:356 ../rules/evdev.xml.in.h:356 -msgid "Left Ctrl key changes layout." -msgstr "A bal Ctrl billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:380 +msgid "Left Ctrl+Left Shift" +msgstr "Bal Ctrl+Bal Shift" -#: ../rules/base.xml.in.h:357 ../rules/evdev.xml.in.h:357 -msgid "Left Shift key changes layout." -msgstr "A bal Shift billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:381 +msgid "Left Shift" +msgstr "Bal Shift" -#: ../rules/base.xml.in.h:358 ../rules/evdev.xml.in.h:358 -msgid "Left Win-key changes layout." -msgstr "A bal Win billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:382 +msgid "Left Win" +msgstr "Bal Win" -#: ../rules/base.xml.in.h:359 ../rules/evdev.xml.in.h:359 -msgid "Left Win-key is Compose." -msgstr "A bal Win billentyű a kombináló (Compose)." +#: ../rules/base.xml.in.h:383 +msgid "Left Win (to first layout), Right Win/Menu (to last layout)" +msgstr "Bal Win (az elsÅ‘ kiosztásra), jobb Win/Menü (az utolsó kiosztásra)" -#: ../rules/base.xml.in.h:360 ../rules/evdev.xml.in.h:360 -msgid "Left Win-key switches layout while pressed." -msgstr "A bal Win billentyű lenyomva tartva megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:384 +msgid "Left Win (while pressed)" +msgstr "Bal Win (lenyomva tartva)" -#: ../rules/base.xml.in.h:361 ../rules/evdev.xml.in.h:361 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Balkezes" -#: ../rules/base.xml.in.h:362 ../rules/evdev.xml.in.h:362 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Balkezes Dvorák" -#: ../rules/base.xml.in.h:363 ../rules/evdev.xml.in.h:363 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Örökölt" -#: ../rules/base.xml.in.h:364 ../rules/evdev.xml.in.h:364 -msgid "Legacy Wang 724 keypad" -msgstr "Hagyományos Wang 724 számbillentyűzet" +#: ../rules/base.xml.in.h:388 +msgid "Legacy Wang 724" +msgstr "Hagyományos Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:366 ../rules/evdev.xml.in.h:366 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Hagyományos számbillentyűzet vesszÅ‘vel" -#: ../rules/base.xml.in.h:367 ../rules/evdev.xml.in.h:367 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Hagyományos számbillentyűzet ponttal" -#: ../rules/base.xml.in.h:368 ../rules/evdev.xml.in.h:368 -msgid "Legacy keypad" -msgstr "Hagyományos számbillentyűzet" +#: ../rules/base.xml.in.h:392 +msgid "Less-than/Greater-than" +msgstr "Kisebb mint/nagyobb mint" -#: ../rules/base.xml.in.h:369 ../rules/evdev.xml.in.h:369 -msgid "Less-than/Greater-than is Compose." -msgstr "A kisebb mint/nagyobb mint a kombináló (Compose)." - -#: ../rules/base.xml.in.h:370 ../rules/evdev.xml.in.h:370 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litvánia" -#: ../rules/base.xml.in.h:371 ../rules/evdev.xml.in.h:371 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access billentyűzet" -#: ../rules/base.xml.in.h:372 ../rules/evdev.xml.in.h:372 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:373 ../rules/evdev.xml.in.h:373 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (másik lehetÅ‘ség)" -#: ../rules/base.xml.in.h:374 ../rules/evdev.xml.in.h:374 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:375 ../rules/evdev.xml.in.h:375 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:376 ../rules/evdev.xml.in.h:376 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:377 ../rules/evdev.xml.in.h:377 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:378 ../rules/evdev.xml.in.h:378 -msgid "Logitech Cordless Desktop Pro (alternate option2)" -msgstr "Logitech Cordless Desktop Pro (harmadik lehetÅ‘ség)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" +msgstr "Logitech Cordless Desktop Pro (másik lehetÅ‘ség)" -#: ../rules/base.xml.in.h:379 ../rules/evdev.xml.in.h:379 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:380 ../rules/evdev.xml.in.h:380 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:381 ../rules/evdev.xml.in.h:381 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15, extra billentyűk a G15daemon közvetÃtésével" -#: ../rules/base.xml.in.h:382 ../rules/evdev.xml.in.h:382 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech általános billentyűzet" -#: ../rules/base.xml.in.h:383 ../rules/evdev.xml.in.h:383 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 billentyűzet" -#: ../rules/base.xml.in.h:384 ../rules/evdev.xml.in.h:384 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet billentyűzet" -#: ../rules/base.xml.in.h:385 ../rules/evdev.xml.in.h:385 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator billentyűzet" -#: ../rules/base.xml.in.h:386 ../rules/evdev.xml.in.h:386 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite billentyűzet" -#: ../rules/base.xml.in.h:387 ../rules/evdev.xml.in.h:387 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X vezeték nélküli asztali médiabillentyűzet" -#: ../rules/base.xml.in.h:388 ../rules/evdev.xml.in.h:388 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X billentyűzet" -#: ../rules/base.xml.in.h:389 ../rules/evdev.xml.in.h:389 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge billentyűzet" -#: ../rules/base.xml.in.h:390 ../rules/evdev.xml.in.h:390 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo billentyűzet" -#: ../rules/base.xml.in.h:391 ../rules/evdev.xml.in.h:391 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:392 ../rules/evdev.xml.in.h:392 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless billentyűzet (modell: Y-RB6)" -#: ../rules/base.xml.in.h:393 ../rules/evdev.xml.in.h:393 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:394 ../rules/evdev.xml.in.h:394 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:395 ../rules/evdev.xml.in.h:395 +#: ../rules/base.xml.in.h:418 +msgid "Lower Sorbian" +msgstr "Alsó szorb" + +#: ../rules/base.xml.in.h:419 +msgid "Lower Sorbian (qwertz)" +msgstr "Alsó szorb (qwertz)" + +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:396 ../rules/evdev.xml.in.h:396 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:397 ../rules/evdev.xml.in.h:397 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:398 ../rules/evdev.xml.in.h:398 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:399 ../rules/evdev.xml.in.h:399 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:400 ../rules/evdev.xml.in.h:400 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Macedónia" -#: ../rules/base.xml.in.h:401 ../rules/evdev.xml.in.h:401 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:402 ../rules/evdev.xml.in.h:402 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh Old" -#: ../rules/base.xml.in.h:403 ../rules/evdev.xml.in.h:403 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Sun halott billentyűk" -#: ../rules/base.xml.in.h:404 ../rules/evdev.xml.in.h:404 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:405 ../rules/evdev.xml.in.h:405 -msgid "Make CapsLock an additional Ctrl." -msgstr "Caps Lock használata egy másik Ctrl-ként." +#: ../rules/base.xml.in.h:430 +msgid "Make CapsLock an additional Backspace" +msgstr "A Caps Lock használata másik Backspace-ként" + +#: ../rules/base.xml.in.h:431 +msgid "Make CapsLock an additional Ctrl" +msgstr "A Caps Lock használata másik Ctrl-ként" + +#: ../rules/base.xml.in.h:432 +msgid "Make CapsLock an additional ESC" +msgstr "A Caps Lock használata másik Esc-ként" + +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "A Caps Lock használata másik Hyper-ként" -#: ../rules/base.xml.in.h:406 ../rules/evdev.xml.in.h:406 +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "A Caps Lock használata másik Num Lock-ként" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "A Caps Lock használata másik Super-ként" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:407 ../rules/evdev.xml.in.h:407 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malajalam" -#: ../rules/base.xml.in.h:408 ../rules/evdev.xml.in.h:408 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malajalam lalitha" -#: ../rules/base.xml.in.h:409 ../rules/evdev.xml.in.h:409 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "MaldÃv-szigetek" -#: ../rules/base.xml.in.h:410 ../rules/evdev.xml.in.h:410 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Málta" -#: ../rules/base.xml.in.h:411 ../rules/evdev.xml.in.h:411 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Máltai billentyűzet egyesült államokbeli kiosztással" -#: ../rules/base.xml.in.h:412 ../rules/evdev.xml.in.h:412 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:413 ../rules/evdev.xml.in.h:413 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:414 ../rules/evdev.xml.in.h:414 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:415 ../rules/evdev.xml.in.h:415 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access billentyűzet" -#: ../rules/base.xml.in.h:416 ../rules/evdev.xml.in.h:416 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:417 ../rules/evdev.xml.in.h:417 -msgid "Menu is Compose." -msgstr "A Menü a kombináló (Compose)." +#: ../rules/base.xml.in.h:447 +msgid "Menu" +msgstr "Menü" -#: ../rules/base.xml.in.h:418 ../rules/evdev.xml.in.h:418 -msgid "Menu key changes layout." -msgstr "A menü billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:448 +msgid "Meta is mapped to Left Win" +msgstr "A Meta a bal Win billentyűhöz van rendelve" -#: ../rules/base.xml.in.h:419 ../rules/evdev.xml.in.h:419 -msgid "Meta is mapped to the Win-keys." -msgstr "A Meta a Win billentyűkhöz van rendelve." +#: ../rules/base.xml.in.h:449 +msgid "Meta is mapped to Win keys" +msgstr "A Meta a Win billentyűkhöz van rendelve" -#: ../rules/base.xml.in.h:420 ../rules/evdev.xml.in.h:420 -msgid "Meta is mapped to the left Win-key." -msgstr "A Meta a bal Win billentyűhöz van rendelve." +#: ../rules/base.xml.in.h:450 +msgid "Microsoft Comfort Curve Keyboard 2000" +msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:421 ../rules/evdev.xml.in.h:421 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet billentyűzet" -#: ../rules/base.xml.in.h:422 ../rules/evdev.xml.in.h:422 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, svéd" -#: ../rules/base.xml.in.h:423 ../rules/evdev.xml.in.h:423 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:424 ../rules/evdev.xml.in.h:424 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:425 ../rules/evdev.xml.in.h:425 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:426 ../rules/evdev.xml.in.h:426 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:427 ../rules/evdev.xml.in.h:427 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:428 ../rules/evdev.xml.in.h:428 +#: ../rules/base.xml.in.h:458 +msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" +msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" + +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office billentyűzet" -#: ../rules/base.xml.in.h:429 ../rules/evdev.xml.in.h:429 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft vezeték nélküli multimédia billentyűzet 1.0A" -#: ../rules/base.xml.in.h:430 ../rules/evdev.xml.in.h:430 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Egyéb kompatibilitási beállÃtások" -#: ../rules/base.xml.in.h:431 ../rules/evdev.xml.in.h:431 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:432 ../rules/evdev.xml.in.h:432 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:433 ../rules/evdev.xml.in.h:433 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:434 ../rules/evdev.xml.in.h:434 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:435 ../rules/evdev.xml.in.h:435 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongólia" -#: ../rules/base.xml.in.h:436 ../rules/evdev.xml.in.h:436 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegró" -#: ../rules/base.xml.in.h:437 ../rules/evdev.xml.in.h:437 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokkó" -#: ../rules/base.xml.in.h:438 ../rules/evdev.xml.in.h:438 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Többnyelvű" -#: ../rules/base.xml.in.h:439 ../rules/evdev.xml.in.h:439 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Többnyelvű, elsÅ‘ rész" -#: ../rules/base.xml.in.h:440 ../rules/evdev.xml.in.h:440 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Többnyelvű, második rész" -#: ../rules/base.xml.in.h:441 ../rules/evdev.xml.in.h:441 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:442 ../rules/evdev.xml.in.h:442 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F stÃlusú backspace" -#: ../rules/base.xml.in.h:443 ../rules/evdev.xml.in.h:443 -msgid "Neostyle" -msgstr "Neostyle" +#: ../rules/base.xml.in.h:474 +msgid "NLA" +msgstr "NLA" -#: ../rules/base.xml.in.h:444 ../rules/evdev.xml.in.h:444 +#: ../rules/base.xml.in.h:475 +msgid "Nativo" +msgstr "NatÃv" + +#: ../rules/base.xml.in.h:476 +msgid "Nativo for Esperanto" +msgstr "NatÃv az eszperantóhoz" + +#: ../rules/base.xml.in.h:477 +msgid "Nativo for USA keyboards" +msgstr "NatÃv az USA billentyűzetekhez" + +#: ../rules/base.xml.in.h:478 +msgid "Neo 2" +msgstr "Neo 2" + +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:445 ../rules/evdev.xml.in.h:445 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepál" -#: ../rules/base.xml.in.h:446 ../rules/evdev.xml.in.h:446 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Hollandia" -#: ../rules/base.xml.in.h:447 ../rules/evdev.xml.in.h:447 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Új fonetikus" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:448 ../rules/evdev.xml.in.h:448 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigéria" -#: ../rules/base.xml.in.h:449 ../rules/evdev.xml.in.h:449 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:450 ../rules/evdev.xml.in.h:450 +#: ../rules/base.xml.in.h:486 +msgid "Non-breakable space character at fourth level" +msgstr "Nem törhetÅ‘ szóköz karakter a negyedik szinten" + +#: ../rules/base.xml.in.h:487 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" +msgstr "Nem törhetÅ‘ szóköz karakter a negyedik szinten, keskeny nem törhetÅ‘ szóköz karakter a hatodik szinten" + +#: ../rules/base.xml.in.h:488 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" +msgstr "Nem törhetÅ‘ szóköz karakter a negyedik szinten, keskeny nem törhetÅ‘ szóköz karakter a hatodik szinten (a Ctrl+Shift segÃtségével)" + +#: ../rules/base.xml.in.h:489 +msgid "Non-breakable space character at second level" +msgstr "Nem törhetÅ‘ szóköz karakter a második szinten" + +#: ../rules/base.xml.in.h:490 +msgid "Non-breakable space character at third level" +msgstr "Nem törhetÅ‘ szóköz karakter a harmadik szinten" + +#: ../rules/base.xml.in.h:491 +msgid "Non-breakable space character at third level, nothing at fourth level" +msgstr "Mem törhetÅ‘ szóköz karakter a harmadik szinten és semmi a negyediken" + +#: ../rules/base.xml.in.h:492 +msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" +msgstr "Nem törhetÅ‘ szóköz karakter a harmadik szinten, keskeny nem törhetÅ‘ szóköz karakter a negyedik szinten" + +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:451 ../rules/evdev.xml.in.h:451 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Északi szami" -#: ../rules/base.xml.in.h:452 ../rules/evdev.xml.in.h:452 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Északi szami, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:453 ../rules/evdev.xml.in.h:453 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:454 ../rules/evdev.xml.in.h:454 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norvégia" -#: ../rules/base.xml.in.h:455 ../rules/evdev.xml.in.h:455 -msgid "NumLock LED shows alternative layout." -msgstr "A NumLock LED mutatja az alternatÃv kiosztást." +#: ../rules/base.xml.in.h:498 +msgid "NumLock" +msgstr "NumLock" -#: ../rules/base.xml.in.h:456 ../rules/evdev.xml.in.h:456 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Számbillentyűzet Delete billentyűjének viselkedése" -#: ../rules/base.xml.in.h:457 ../rules/evdev.xml.in.h:457 -msgid "Numeric keypad keys work as with Mac." -msgstr "A számbillentyűk úgy működjenek, mint Macen." +#: ../rules/base.xml.in.h:500 +msgid "Numeric keypad keys work as with Mac" +msgstr "A számbillentyűk úgy működjenek, mint Macen" -#: ../rules/base.xml.in.h:458 ../rules/evdev.xml.in.h:458 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Számbillentyűzet kiosztásválasztása" -#: ../rules/base.xml.in.h:459 ../rules/evdev.xml.in.h:459 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:460 ../rules/evdev.xml.in.h:460 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:461 ../rules/evdev.xml.in.h:461 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:462 ../rules/evdev.xml.in.h:462 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pastu" -#: ../rules/base.xml.in.h:463 ../rules/evdev.xml.in.h:463 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC déli üzbég" -#: ../rules/base.xml.in.h:464 ../rules/evdev.xml.in.h:464 +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "Okcitán" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:465 ../rules/evdev.xml.in.h:465 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:466 ../rules/evdev.xml.in.h:466 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Orija" -#: ../rules/base.xml.in.h:467 ../rules/evdev.xml.in.h:467 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet billentyűzet" -#: ../rules/base.xml.in.h:468 ../rules/evdev.xml.in.h:468 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Oszét" -#: ../rules/base.xml.in.h:469 ../rules/evdev.xml.in.h:469 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Oszét, win gombok" -#: ../rules/base.xml.in.h:470 ../rules/evdev.xml.in.h:470 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Oszét, örökölt" -#: ../rules/base.xml.in.h:471 ../rules/evdev.xml.in.h:471 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:472 ../rules/evdev.xml.in.h:472 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:473 ../rules/evdev.xml.in.h:473 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakisztán" -#: ../rules/base.xml.in.h:474 ../rules/evdev.xml.in.h:474 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pastu" -#: ../rules/base.xml.in.h:475 ../rules/evdev.xml.in.h:475 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:476 ../rules/evdev.xml.in.h:476 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Perzsa, perzsa számbillentyűzettel" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetikus" -#: ../rules/base.xml.in.h:477 ../rules/evdev.xml.in.h:477 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "Fonetikus Win gombok" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:478 ../rules/evdev.xml.in.h:478 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Lengyelország" -#: ../rules/base.xml.in.h:479 ../rules/evdev.xml.in.h:479 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonic" -#: ../rules/base.xml.in.h:480 ../rules/evdev.xml.in.h:480 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugália" -#: ../rules/base.xml.in.h:481 ../rules/evdev.xml.in.h:481 -msgid "Press Left Alt key to choose 3rd level." -msgstr "A bal Alt billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:482 ../rules/evdev.xml.in.h:482 -msgid "Press Left Win-key to choose 3rd level." -msgstr "A bal Win billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:483 ../rules/evdev.xml.in.h:483 -msgid "Press Menu key to choose 3rd level." -msgstr "A Menü billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:484 ../rules/evdev.xml.in.h:484 -msgid "Press Right Alt key to choose 3rd level, Shift+Right Alt key is Multi_Key." -msgstr "A jobb Alt billentyűvel lehet a harmadik szintet választani, a Shift+jobb Alt kombináció a Multi_Key." - -#: ../rules/base.xml.in.h:485 ../rules/evdev.xml.in.h:485 -msgid "Press Right Alt key to choose 3rd level." -msgstr "A jobb Win billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:486 ../rules/evdev.xml.in.h:486 -msgid "Press Right Ctrl to choose 3rd level." -msgstr "Jobb Ctrl választja ki a 3. szintet." - -#: ../rules/base.xml.in.h:487 ../rules/evdev.xml.in.h:487 -msgid "Press Right Win-key to choose 3rd level." -msgstr "A jobb Win billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:488 ../rules/evdev.xml.in.h:488 -msgid "Press any of Alt keys to choose 3rd level." -msgstr "Bármelyik Alt billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:489 ../rules/evdev.xml.in.h:489 -msgid "Press any of Win-keys to choose 3rd level." -msgstr "Bármelyik Win billentyűvel lehet a harmadik szintet választani." - -#: ../rules/base.xml.in.h:490 ../rules/evdev.xml.in.h:490 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:491 ../rules/evdev.xml.in.h:491 -msgid "Pro Keypad" -msgstr "Pro számbillentyűzet" - -#: ../rules/base.xml.in.h:492 ../rules/evdev.xml.in.h:492 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:493 ../rules/evdev.xml.in.h:493 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programozói Dvorak" -#: ../rules/base.xml.in.h:494 ../rules/evdev.xml.in.h:494 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:495 ../rules/evdev.xml.in.h:495 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:496 ../rules/evdev.xml.in.h:496 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:497 ../rules/evdev.xml.in.h:497 -msgid "R-Alt switches layout while pressed." -msgstr "A jobb Alt billentyű lenyomva tartva megváltoztatja a kiosztást." - -#: ../rules/base.xml.in.h:498 ../rules/evdev.xml.in.h:498 -msgid "Right Alt is Compose." -msgstr "A jobb Alt a kombináló (Compose)." - -#: ../rules/base.xml.in.h:499 ../rules/evdev.xml.in.h:499 -msgid "Right Alt key changes layout." -msgstr "A jobb Alt billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:532 +msgid "Right Alt" +msgstr "Jobb Alt" -#: ../rules/base.xml.in.h:500 ../rules/evdev.xml.in.h:500 -msgid "Right Alt key never chooses 3rd level." -msgstr "A jobb Alt billentyű sohasem választ harmadik szintet." +#: ../rules/base.xml.in.h:533 +msgid "Right Alt (while pressed)" +msgstr "Jobb Alt (lenyomva tartva)" -#: ../rules/base.xml.in.h:501 ../rules/evdev.xml.in.h:501 -msgid "Right Ctrl is Compose." -msgstr "A jobb Ctrl a kombináló (Compose)." +#: ../rules/base.xml.in.h:534 +msgid "Right Alt key never chooses 3rd level" +msgstr "A jobb Alt billentyű sohasem választ harmadik szintet" -#: ../rules/base.xml.in.h:502 ../rules/evdev.xml.in.h:502 -msgid "Right Ctrl key changes layout." -msgstr "A jobb Ctrl billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:535 +msgid "Right Alt, Shift+Right Alt key is Multi_Key" +msgstr "Jobb Alt, a Shift+jobb Alt kombináció a Multi_Key" -#: ../rules/base.xml.in.h:503 ../rules/evdev.xml.in.h:503 -msgid "Right Ctrl key switches layout while pressed." -msgstr "A jobb Ctrl billentyű lenyomva tartva megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:536 +msgid "Right Ctrl" +msgstr "Jobb Ctrl" -#: ../rules/base.xml.in.h:504 ../rules/evdev.xml.in.h:504 -msgid "Right Ctrl key works as Right Alt." -msgstr "Jobb Ctrl használata jobb Alt-ként." +#: ../rules/base.xml.in.h:537 +msgid "Right Ctrl (while pressed)" +msgstr "Jobb Ctrl (lenyomva tartva)" -#: ../rules/base.xml.in.h:505 ../rules/evdev.xml.in.h:505 -msgid "Right Shift key changes layout." -msgstr "A jobb Shift billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:538 +msgid "Right Ctrl as Right Alt" +msgstr "Jobb Ctrl használata jobb Alt-ként" -#: ../rules/base.xml.in.h:506 ../rules/evdev.xml.in.h:506 -msgid "Right Win-key changes layout." -msgstr "A jobb Win billentyű megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:539 +msgid "Right Shift" +msgstr "Jobb Shift" -#: ../rules/base.xml.in.h:507 ../rules/evdev.xml.in.h:507 -msgid "Right Win-key is Compose." -msgstr "A jobb Win billentyű a kombináló (Compose)." +#: ../rules/base.xml.in.h:540 +msgid "Right Win" +msgstr "Jobb Win" -#: ../rules/base.xml.in.h:508 ../rules/evdev.xml.in.h:508 -msgid "Right Win-key switches layout while pressed." -msgstr "A jobb Win billentyű lenyomva tartva megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:541 +msgid "Right Win (while pressed)" +msgstr "Jobb Win (lenyomva tartva)" -#: ../rules/base.xml.in.h:509 ../rules/evdev.xml.in.h:509 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Jobbkezes" -#: ../rules/base.xml.in.h:510 ../rules/evdev.xml.in.h:510 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Jobbkezes Dvorák" -#: ../rules/base.xml.in.h:511 ../rules/evdev.xml.in.h:511 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Románia" -#: ../rules/base.xml.in.h:512 ../rules/evdev.xml.in.h:512 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Román billentyűzet német betűkkel" -#: ../rules/base.xml.in.h:513 ../rules/evdev.xml.in.h:513 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Román billentyűzet német betűkkel, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:514 ../rules/evdev.xml.in.h:514 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:515 ../rules/evdev.xml.in.h:515 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:516 ../rules/evdev.xml.in.h:516 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Oroszország" -#: ../rules/base.xml.in.h:517 ../rules/evdev.xml.in.h:517 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Orosz" -#: ../rules/base.xml.in.h:518 ../rules/evdev.xml.in.h:518 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Orosz fonetikus" -#: ../rules/base.xml.in.h:519 ../rules/evdev.xml.in.h:519 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Orosz fonetikus Dvorak" -#: ../rules/base.xml.in.h:520 ../rules/evdev.xml.in.h:520 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Orosz fonetikus, halott billentyűk tiltása" -#: ../rules/base.xml.in.h:521 ../rules/evdev.xml.in.h:521 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "orosz kazahhal" -#: ../rules/base.xml.in.h:522 ../rules/evdev.xml.in.h:522 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:523 ../rules/evdev.xml.in.h:523 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:524 ../rules/evdev.xml.in.h:524 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:525 ../rules/evdev.xml.in.h:525 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:526 ../rules/evdev.xml.in.h:526 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:527 ../rules/evdev.xml.in.h:527 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:528 ../rules/evdev.xml.in.h:528 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:529 ../rules/evdev.xml.in.h:529 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:530 ../rules/evdev.xml.in.h:530 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:531 ../rules/evdev.xml.in.h:531 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:532 ../rules/evdev.xml.in.h:532 -msgid "ScrollLock LED shows alternative layout." -msgstr "A ScrollLock LED mutatja az alternatÃv kiosztást." +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:533 ../rules/evdev.xml.in.h:533 +#: ../rules/base.xml.in.h:566 +msgid "ScrollLock" +msgstr "ScrollLock" + +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:534 ../rules/evdev.xml.in.h:534 +#: ../rules/base.xml.in.h:568 +msgid "Semi-colon on third level" +msgstr "PontosvesszÅ‘ a harmadik szinten" + +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Szerbia" -#: ../rules/base.xml.in.h:535 ../rules/evdev.xml.in.h:535 -msgid "Shift cancels CapsLock." -msgstr "A Shift megszakÃtja a Caps Lock-ot." +#: ../rules/base.xml.in.h:570 +msgid "Shift cancels CapsLock" +msgstr "A Shift megszakÃtja a Caps Lockot" -#: ../rules/base.xml.in.h:536 ../rules/evdev.xml.in.h:536 -msgid "Shift with numeric keypad keys works as in MS Windows." -msgstr "A Shift+számbillentyűk úgy működjenek, mint az MS Windowsban." +#: ../rules/base.xml.in.h:571 +msgid "Shift does not cancel NumLock, chooses 3d level instead" +msgstr "A Shift nem szakÃtja meg a Num Lockot, a harmadik szintet választja ki" -#: ../rules/base.xml.in.h:537 ../rules/evdev.xml.in.h:537 -msgid "Shift+CapsLock changes layout." -msgstr "A Shift+Caps Lock kombináció megváltoztatja a kiosztást." +#: ../rules/base.xml.in.h:572 +msgid "Shift with numeric keypad keys works as in MS Windows" +msgstr "A Shift+számbillentyűk úgy működjenek, mint az MS Windowsban" -#: ../rules/base.xml.in.h:538 ../rules/evdev.xml.in.h:538 +#: ../rules/base.xml.in.h:573 +msgid "Shift+CapsLock" +msgstr "Shift+CapsLock" + +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Egyszerű" -#: ../rules/base.xml.in.h:539 ../rules/evdev.xml.in.h:539 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Szlovákia" -#: ../rules/base.xml.in.h:540 ../rules/evdev.xml.in.h:540 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Szlovénia" -#: ../rules/base.xml.in.h:541 ../rules/evdev.xml.in.h:541 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Dél-Afrika" -#: ../rules/base.xml.in.h:542 ../rules/evdev.xml.in.h:542 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "déli üzbég" -#: ../rules/base.xml.in.h:543 ../rules/evdev.xml.in.h:543 -msgid "Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level" -msgstr "A szóköz billentyű nem törhetÅ‘ szóközt ad a negyedik szinten, keskeny nem törhetÅ‘ szóközt a hatodik szinten" - -#: ../rules/base.xml.in.h:544 ../rules/evdev.xml.in.h:544 -msgid "Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift" -msgstr "A szóköz billentyű nem törhetÅ‘ szóközt ad a negyedik szinten, keskeny nem törhetÅ‘ szóközt a hatodik szinten (a Ctrl+Shift segÃtségével)" - -#: ../rules/base.xml.in.h:545 ../rules/evdev.xml.in.h:545 -msgid "Space key outputs non-breakable space character at fourth level." -msgstr "A szóköz billentyű nem törhetÅ‘ szóközt ad a negyedik szinten." - -#: ../rules/base.xml.in.h:546 ../rules/evdev.xml.in.h:546 -msgid "Space key outputs non-breakable space character at second level." -msgstr "A szóköz billenytű nem törhetÅ‘ szóközt ad a második szinten." - -#: ../rules/base.xml.in.h:547 ../rules/evdev.xml.in.h:547 -msgid "Space key outputs non-breakable space character at third level, nothing at fourth level." -msgstr "A szóköz billenytű nem törhetÅ‘ szóközt ad a harmadik szinten és semmit nem ad a negyediken." - -#: ../rules/base.xml.in.h:548 ../rules/evdev.xml.in.h:548 -msgid "Space key outputs non-breakable space character at third level, thin non-breakable space character at fourth level" -msgstr "A szóköz billentyű nem törhetÅ‘ szóközt ad a harmadik szinten, keskeny nem törhetÅ‘ szóközt a negyedik szinten" - -#: ../rules/base.xml.in.h:549 ../rules/evdev.xml.in.h:549 -msgid "Space key outputs non-breakable space character at third level." -msgstr "A szóköz billentyű nem törhetÅ‘ szóközt ad a harmadik szinten." - -#: ../rules/base.xml.in.h:550 ../rules/evdev.xml.in.h:550 -msgid "Space key outputs usual space at any level." -msgstr "A szóköz hagyományos szóközt ad bármely szinten." - -#: ../rules/base.xml.in.h:551 ../rules/evdev.xml.in.h:551 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanyolország" -#: ../rules/base.xml.in.h:552 ../rules/evdev.xml.in.h:552 -msgid "Special keys (Ctrl+Alt+<key>) handled in a server." -msgstr "A speciális billentyűket (Ctrl+Alt+<billentyű>) a kiszolgáló kezeli." +#: ../rules/base.xml.in.h:580 +msgid "Special keys (Ctrl+Alt+<key>) handled in a server" +msgstr "A speciális billentyűket (Ctrl+Alt+<billentyű>) a kiszolgáló kezeli" -#: ../rules/base.xml.in.h:553 ../rules/evdev.xml.in.h:553 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:554 ../rules/evdev.xml.in.h:554 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:555 ../rules/evdev.xml.in.h:555 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Szabványos" -#: ../rules/base.xml.in.h:556 ../rules/evdev.xml.in.h:556 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Szabványos (cédille)" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:558 ../rules/evdev.xml.in.h:558 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Szabványos RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:560 ../rules/evdev.xml.in.h:560 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Szabványos RSTU orosz kiosztáson" -#: ../rules/base.xml.in.h:561 ../rules/evdev.xml.in.h:561 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:562 ../rules/evdev.xml.in.h:562 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun halott billentyűk" -#: ../rules/base.xml.in.h:563 ../rules/evdev.xml.in.h:563 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power multimédia billentyűzet" -#: ../rules/base.xml.in.h:564 ../rules/evdev.xml.in.h:564 -msgid "Super is mapped to the Win-keys." -msgstr "A Super a Win billentyűkhöz van rendelve." - -#: ../rules/base.xml.in.h:565 ../rules/evdev.xml.in.h:565 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:566 ../rules/evdev.xml.in.h:566 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:567 ../rules/evdev.xml.in.h:567 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:568 ../rules/evdev.xml.in.h:568 -msgid "Swap Ctrl and CapsLock." -msgstr "Ctrl és Caps Lock felcserélése." +#: ../rules/base.xml.in.h:595 +msgid "Swap Ctrl and CapsLock" +msgstr "Ctrl és Caps Lock felcserélése" -#: ../rules/base.xml.in.h:569 ../rules/evdev.xml.in.h:569 -msgid "Swap ESC and CapsLock." -msgstr "ESC és Caps Lock felcserélése." +#: ../rules/base.xml.in.h:596 +msgid "Swap ESC and CapsLock" +msgstr "ESC és Caps Lock felcserélése" -#: ../rules/base.xml.in.h:570 ../rules/evdev.xml.in.h:570 -msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -msgstr "Két billentyű kódjának felcserélése, ha a kernel rosszul észleli a Mac billentyűzetet." - -#: ../rules/base.xml.in.h:571 ../rules/evdev.xml.in.h:571 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:572 ../rules/evdev.xml.in.h:572 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Svédország" -#: ../rules/base.xml.in.h:573 ../rules/evdev.xml.in.h:573 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Svájc" -#: ../rules/base.xml.in.h:574 ../rules/evdev.xml.in.h:574 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:575 ../rules/evdev.xml.in.h:575 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:576 ../rules/evdev.xml.in.h:576 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "SzÃria" -#: ../rules/base.xml.in.h:577 ../rules/evdev.xml.in.h:577 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "SzÃr" -#: ../rules/base.xml.in.h:578 ../rules/evdev.xml.in.h:578 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "SzÃr fonetikus" -#: ../rules/base.xml.in.h:579 ../rules/evdev.xml.in.h:579 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:580 ../rules/evdev.xml.in.h:580 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tádzsikisztán" -#: ../rules/base.xml.in.h:581 ../rules/evdev.xml.in.h:581 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamil" -#: ../rules/base.xml.in.h:582 ../rules/evdev.xml.in.h:582 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB Ãrógép" -#: ../rules/base.xml.in.h:583 ../rules/evdev.xml.in.h:583 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII Ãrógép" -#: ../rules/base.xml.in.h:584 ../rules/evdev.xml.in.h:584 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamil Unicode" -#: ../rules/base.xml.in.h:585 ../rules/evdev.xml.in.h:585 +#: ../rules/base.xml.in.h:611 +msgid "Targa Visionary 811" +msgstr "Targa Visionary 811" + +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "tatár" -#: ../rules/base.xml.in.h:586 ../rules/evdev.xml.in.h:586 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:587 ../rules/evdev.xml.in.h:587 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:588 ../rules/evdev.xml.in.h:588 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thaiföld" -#: ../rules/base.xml.in.h:589 ../rules/evdev.xml.in.h:589 -msgid "Third level choosers" -msgstr "Harmadik szintű választók" - -#: ../rules/base.xml.in.h:590 ../rules/evdev.xml.in.h:590 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibeti" -#: ../rules/base.xml.in.h:591 ../rules/evdev.xml.in.h:591 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibeti (ASCII számjegyekkel)" -#: ../rules/base.xml.in.h:592 ../rules/evdev.xml.in.h:592 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:593 ../rules/evdev.xml.in.h:593 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "AlternatÃv Tifinagh" -#: ../rules/base.xml.in.h:594 ../rules/evdev.xml.in.h:594 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "AlternatÃv fonetikus Tifinagh" -#: ../rules/base.xml.in.h:595 ../rules/evdev.xml.in.h:595 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "KibÅ‘vÃtett Tifinagh" -#: ../rules/base.xml.in.h:596 ../rules/evdev.xml.in.h:596 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "KibÅ‘vÃtett fonetikus Tifinagh" -#: ../rules/base.xml.in.h:597 ../rules/evdev.xml.in.h:597 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Fonetikus Tifinagh" -#: ../rules/base.xml.in.h:598 ../rules/evdev.xml.in.h:598 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilde (~) változat" -#: ../rules/base.xml.in.h:599 ../rules/evdev.xml.in.h:599 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:600 ../rules/evdev.xml.in.h:600 +#: ../rules/base.xml.in.h:626 +msgid "To the corresponding key in a Dvorak keyboard." +msgstr "A Dvorak billentyűzeten megfelelÅ‘ billentyűre." + +#: ../rules/base.xml.in.h:627 +msgid "To the corresponding key in a Qwerty keyboard." +msgstr "A Qwerty billentyűzeten megfelelÅ‘ billentyűre." + +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:601 ../rules/evdev.xml.in.h:601 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Hagyományos fonetikus" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access billentyűzet" -#: ../rules/base.xml.in.h:602 ../rules/evdev.xml.in.h:602 +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:603 ../rules/evdev.xml.in.h:603 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:604 ../rules/evdev.xml.in.h:604 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Törökország" -#: ../rules/base.xml.in.h:605 ../rules/evdev.xml.in.h:605 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "Türkmenisztán" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Ãrógép" -#: ../rules/base.xml.in.h:606 ../rules/evdev.xml.in.h:606 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW kiosztás (csak ékezetes betűk)" -#: ../rules/base.xml.in.h:607 ../rules/evdev.xml.in.h:607 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "US billentyűzet bosnyák billentyűkombinációkkal" -#: ../rules/base.xml.in.h:608 ../rules/evdev.xml.in.h:608 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "US billentyűzet bosnyák betűkkel" -#: ../rules/base.xml.in.h:609 ../rules/evdev.xml.in.h:609 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "US billentyűzet horvát billentyűkombinációkkal" -#: ../rules/base.xml.in.h:610 ../rules/evdev.xml.in.h:610 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "US billentyűzet horvát betűkkel" -#: ../rules/base.xml.in.h:611 ../rules/evdev.xml.in.h:611 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "US billentyűzet észt betűkkel" -#: ../rules/base.xml.in.h:612 ../rules/evdev.xml.in.h:612 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "US billentyűzet olasz betűkkel" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "US billentyűzet litván betűkkel" -#: ../rules/base.xml.in.h:613 ../rules/evdev.xml.in.h:613 -msgid "US keyboard with Slovenian digraphs" -msgstr "US billentyűzet szlovén billentyűkombinációkkal" - -#: ../rules/base.xml.in.h:614 ../rules/evdev.xml.in.h:614 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "US billentyűzet szlovén betűkkel" -#: ../rules/base.xml.in.h:615 ../rules/evdev.xml.in.h:615 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:616 ../rules/evdev.xml.in.h:616 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:617 ../rules/evdev.xml.in.h:617 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:618 ../rules/evdev.xml.in.h:618 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukrajna" -#: ../rules/base.xml.in.h:619 ../rules/evdev.xml.in.h:619 +#: ../rules/base.xml.in.h:650 +msgid "Unicode additions (arrows and math operators)" +msgstr "Unicode kiegészÃtések (nyilak és műveleti jelek)" + +#: ../rules/base.xml.in.h:651 +msgid "Unicode additions (arrows and math operators). Math operators on default level" +msgstr "Unicode kiegészÃtések (nyilak és műveleti jelek). A műveleti jelek az alapértelmezett szinten" + +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:620 ../rules/evdev.xml.in.h:620 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Egyesült Királyság" -#: ../rules/base.xml.in.h:621 ../rules/evdev.xml.in.h:621 -msgid "Urdu" -msgstr "Urdu" +#: ../rules/base.xml.in.h:654 +msgid "Unitek KB-1925" +msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:622 ../rules/evdev.xml.in.h:622 +#: ../rules/base.xml.in.h:655 +msgid "Urdu, Alternative phonetic" +msgstr "Urdu, alternatÃv fonetikus" + +#: ../rules/base.xml.in.h:656 +msgid "Urdu, Phonetic" +msgstr "Urdu, fonetikus" + +#: ../rules/base.xml.in.h:657 +msgid "Urdu, Winkeys" +msgstr "Urdu, Winkeys" + +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Bosnyák billentyűkombinációk használata" -#: ../rules/base.xml.in.h:623 ../rules/evdev.xml.in.h:623 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Horvát billentyűkombinációk használata" -#: ../rules/base.xml.in.h:624 ../rules/evdev.xml.in.h:624 -msgid "Use Slovenian digraphs" -msgstr "Szlovén billentyűkombinációk használata" - -#: ../rules/base.xml.in.h:625 ../rules/evdev.xml.in.h:625 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "»Csúcsos« idézÅ‘jelek használata idézetekhez" -#: ../rules/base.xml.in.h:626 ../rules/evdev.xml.in.h:626 -msgid "Use keyboard LED to show alternative layout." -msgstr "Az alternatÃv kiosztás mutatása a billentyűzet LED-ek használatával." +#: ../rules/base.xml.in.h:661 +msgid "Use keyboard LED to show alternative layout" +msgstr "Az alternatÃv kiosztás megjelenÃtése a billentyűzet LED-ek használatával" -#: ../rules/base.xml.in.h:627 ../rules/evdev.xml.in.h:627 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "A szóköz billenytű használata nem törhetÅ‘ szóköz bevitelére" -#: ../rules/base.xml.in.h:628 ../rules/evdev.xml.in.h:628 +#: ../rules/base.xml.in.h:663 +msgid "Usual space at any level" +msgstr "Hagyományos szóköz bármely szinten" + +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:629 ../rules/evdev.xml.in.h:629 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Üzbegisztán" -#: ../rules/base.xml.in.h:630 ../rules/evdev.xml.in.h:630 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:631 ../rules/evdev.xml.in.h:631 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet billentyűzet" -#: ../rules/base.xml.in.h:632 ../rules/evdev.xml.in.h:632 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:633 ../rules/evdev.xml.in.h:633 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 numerikus billentyűzet unicode bÅ‘vÃtésekkel (nyilak és műveleti jelek)" -#: ../rules/base.xml.in.h:634 ../rules/evdev.xml.in.h:634 -msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level." -msgstr "Wang 724 numerikus billentyűzet unicode bÅ‘vÃtésekkel (nyilak és műveleti jelek). A műveleti jelek az alapértelmezett szinten." +#: ../rules/base.xml.in.h:670 +msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" +msgstr "Wang 724 numerikus billentyűzet Unicode bÅ‘vÃtésekkel (nyilak és műveleti jelek). A műveleti jelek az alapértelmezett szinten" -#: ../rules/base.xml.in.h:635 ../rules/evdev.xml.in.h:635 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang 724-es modell, azerty" -#: ../rules/base.xml.in.h:636 ../rules/evdev.xml.in.h:636 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Nyugati" -#: ../rules/base.xml.in.h:637 ../rules/evdev.xml.in.h:637 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:638 ../rules/evdev.xml.in.h:638 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Winkeys" -#: ../rules/base.xml.in.h:639 ../rules/evdev.xml.in.h:639 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Az <\\|> billentyűvel" -#: ../rules/base.xml.in.h:640 ../rules/evdev.xml.in.h:640 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Euro jel az 5-ös billentyűn" -#: ../rules/base.xml.in.h:641 ../rules/evdev.xml.in.h:641 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "»Csúcsos« idézÅ‘jelekkel" -#: ../rules/base.xml.in.h:642 ../rules/evdev.xml.in.h:642 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet billentyűzet" -#: ../rules/base.xml.in.h:643 ../rules/evdev.xml.in.h:643 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Jakut" -#: ../rules/base.xml.in.h:644 ../rules/evdev.xml.in.h:644 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Joruba" -#: ../rules/base.xml.in.h:645 ../rules/evdev.xml.in.h:645 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "A Z és a ZHE felcserélve" -#: ../rules/base.xml.in.h:646 ../rules/evdev.xml.in.h:646 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:647 ../rules/evdev.xml.in.h:647 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "Azerty" -#: ../rules/base.xml.in.h:648 ../rules/evdev.xml.in.h:648 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "Azerty/számjegyek" -#: ../rules/base.xml.in.h:649 ../rules/evdev.xml.in.h:649 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "Számjegyek" -#: ../rules/base.xml.in.h:650 ../rules/evdev.xml.in.h:650 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "elcsúszott pontosvesszÅ‘ és idézÅ‘jel (elavult)" -#: ../rules/base.xml.in.h:651 ../rules/evdev.xml.in.h:651 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:652 ../rules/evdev.xml.in.h:652 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:653 ../rules/evdev.xml.in.h:653 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, kibÅ‘vÃtett visszaper" -#: ../rules/base.xml.in.h:654 ../rules/evdev.xml.in.h:654 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/számjegyek" -#: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" + +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Ékezetek kombinálása a halott billentyűk helyett" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Nemzetközi (AltGr Unicode kombinálással)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Nemzetközi (AltGr Unicode kombinálással, alternatÃv)" diff --git a/xorg-server/xkbdata.src/po/id.po b/xorg-server/xkbdata.src/po/id.po index 116550cb3..0f955d14f 100644 --- a/xorg-server/xkbdata.src/po/id.po +++ b/xorg-server/xkbdata.src/po/id.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config-1.6pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-14 22:03+0700\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 11:53-0400\n" "Last-Translator: Andhika Padmawan <andhika.padmawan@gmail.com>\n" "Language-Team: Indonesian <translation-team-id@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" @@ -371,2382 +371,2438 @@ msgid "Bangladesh" msgstr "Banglades" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Bashkirian" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Belarus" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgia" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengali" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomic, Dvorak way" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomic, Dvorak way, latin-9 only" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Biblical Hebrew (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnia dan Herzegovina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Kedua tombol Alt bersama" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Kedua tombol Ctrl bersama" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Kedua tombol Shift bersama" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasil" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Breton" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgaria" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kamboja" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (ke tata letak pertama), Shift+CapsLock (ke tata letak terakhir)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (ketika ditekan), Alt+CapsLock melakukan aksi capslock asli" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "CapsLock bertindak sebagai Shift dengan mengunci. Shift \"jeda\" CapsLock." -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock bertindak sebagai Shift yang terkunci. Shift tidak mempengaruhi CapsLock" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock dinonaktifkan" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Tindakan tombol CapsLock" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock toggle Shift sehingga semua tombol terpengaruh" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock toggle huruf besar normal atau karakter secara alfabet" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock menggunakan huruf besar internal. Shift \"pauses\" CapsLock" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock menggunakan huruf besar internal. Shift tidak mempengaruhi CapsLock" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Varian Katalan dengan titik-tengah pada L" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilla" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternate option)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "China" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chuvash" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chuvash Latin" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Classic" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Classic Dvorak" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 tombol)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 tombol)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 tombol)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Posisi tombol Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongo, Republik Demokrat" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control + Alt + Backspace" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Kendali dipetakan ke tombol Alt, Alt dipetakan ke tombol Win" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Kendali dipetakan ke tombol Win ( dan tombol Ctrl biasa)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Crimean Tatar (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Crimean Tatar (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Crimean Tatar (Turkish Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Crimean Tatar (Turkish F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Crimean Tatar (Turkish Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroasia" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Posisi tombol Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cyrillic" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cyrillic dengan guillemets" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cyrillic, Z dan ZHE di-swap" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Czechia" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Dead acute" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Dead grave acute" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Tombol angka keypad standar" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-key PC" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Laptop/notebook Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Laptop/notebook Precision M series" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude series laptop" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keyboard" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Denmark" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 series" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (UK Punctuation)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak international" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, tanda kutip Polandia pada tombol 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, tanda kutip Polandia pada tombol quotemark" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Eastern" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Hapus tombol mati" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Aktifkan karakter tipografi ekstra" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Inggris" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Enter pada keypad" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomic" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estonia" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Ethiopia" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-managed keyboard" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Extended" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Extended - Winkeys" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Extended Backslash" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "varian huruf-F (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "kepulauan Farao" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finlandia" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Tombol empat-tingkat dengan pemisah abstrak" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Tombol empat-tingkat dengan koma" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Tombol empat-tingkat dengan titik" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Tombol empat-tingkat dengan titik, pembatasan latin-9" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Tombol empat tingkat dengan momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Perancis" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Perancis" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "French (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "French (legacy)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "French Dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Frence, Tombol mati Matahari" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "French, hapus tombol mati" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO laptop" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Generic 101-key PC" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Generic 102-key (Intl) PC" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Generic 104-key PC" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Generic 105-key (Intl) PC" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgia" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgia" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgian AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "German (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "German, Tombol mati Matahari" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "German, hapus tombol mati" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Jerman" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Yunani" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Grup toggle pada tombol perkalian/pembagian" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujurati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard untukr Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Papan Ketik Multimedia Hewlett-Packard SK-2501" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Heksadesimal" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hvr" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hungaria" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hiper dipetakan ke tombol Win" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO Alternate" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islandia" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Termasuk tilde mati" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "India" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internasional (AltGr tombol mati)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internasional (dengan tombol mati)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlandia" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italia" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Jepang" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx Series)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Pilihan Keyboard Jepang" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Tombol Kana Lock terkunci" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kashubian" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakh dengan Rusia" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakhstan" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Sekuensi kunci untuk mematikan server X" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Tekan Menu Kiri untuk memilih tingkat 3" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Tombol untuk mengubah tata letak" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Keypad" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Republik Korea" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdish, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdish, Arabic-Latin" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdish, Latin Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdish, Latin Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kyrgyzstan" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Laptop/notebook eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latin" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latin Amerika" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latin Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latin Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latin qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latin unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latin unicode qwerty" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latin dengan guillemets" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Latvia" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Alt Kiri" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Alt Kiri (ketika ditekan)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Alt Kiri ditukar dengan Win Kiri" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Ctrl Kiri" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Ctrl Kiri+Shift Kiri" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Shift Kiri" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Win Kiri" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Win Kiri (ke tata letak pertama), Win/Menu Kanan (ke tata letak terakhir)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Win Kiri (ketika ditekan)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Kidal" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Left handed Dvorak" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Legacy" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Legacy Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Tombol Legacy dengan koma" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Tombol Legacy dengan titik" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Lebih-kecil/Lebih-besar" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Lithuania" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (pilihan alternatif)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (opsi alternatif 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 extra keys via G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (model Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Lower Sorbian" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Lower Sorbian (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Masedonia" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh Old" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Machintosh, tombol mati Matahari" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Machintosh, hapus tombol mati" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Buat CapsLock sebagai tambahan Backspace" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Buat CapsLock sebagai tambahan Ctrl" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Buat CapsLock sebagai tambahan ESC" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Buat CapsLock sebagai tambahan Hiper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Buat CapsLock sebagai tambahan NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Buat CapsLock sebagai tambahan Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldives" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Keyboard Maltase dengan Layout US" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta dipetakan ke tombol Win Kiri" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta dipetakan ke tombol Win" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Swedia" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Pilihan kompabilitas lain-lain" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolia" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Maroko" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Multilingual" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Multilingual, bagian pertama" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Multilingual, bagian kedua" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F style Backspace" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo untuk Esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo untuk papan ketik USA" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Belanda" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Fonetik baru" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Negeria" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Karakter spasi yang tidak pecah pada tingkat 4" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Karakter spasi yang tidak pecah pada tingkat 4, karakter spasi yang tidak pecah dan tipis pada tingkat 6" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Karakter spasi yang tidak pecah pada tingkat 4, karakter spasi yang tidak pecah dan tipis pada tingkat 6 (via Ctrl+Shift)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Karakter spasi yang tidak pecah pada tingkat 2" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Karakter spasi yang tidak pecah pada tingkat 3" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Karakter spasi yang tidak pecah pada tingkat 3, tidak ada pada tingkat 4" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Karakter spasi yang tidak pecah pada tingkat 3, karakter spasi yang tidak pecah dan tipis pada tingkat 4" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Northern Saami" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Northern Saami, hapus tombo mati" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norwegia" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Keypad numerik menghapus perilaku tombol" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Keypad numerik bekerja seperti dengan Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Pilihan layout Keypad numerik " -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Southern Uzbek" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Occitan" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetian" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossetian, Tombol Win" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Ossetian, legacy" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persia, dengan papan ketik Persia" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Phonetic" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Phonetic Winkeys" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polandia" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonic" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programmer Dvorak" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Alt Kanan" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Alt Kanan (ketika ditekan)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Alt Kanan tidak pernah memilih tingkat 3" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Alt Kanan, Shift+Right Alt adalah Multi_Key" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Ctrl Kanan" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Ctrl Kanan (ketika ditekan)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Ctrl Kanan bertindak seperti Alt Kanan" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Shift Kanan" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Win Kanan" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Win Kanan (ketika ditekan)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Tangan Kanan" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Right handed Dvorak" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumania" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Keyboard Rumania dengan huruf Jerman" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Keyboard Rumania dengan huruf Jerman, hapus tombol mati" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusia" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Rusia" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Russian phonetic" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Russian phonetic Dvorak" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Russian phonetic, hapus tombol mati" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Rusia dengan Kazakh" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Semi-kolon pada level ketiga" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbia" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift membatalkan CapsLock" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift tidak membatalkan NumLock, lebih memilih level ketiga" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shit dengan keypad numerik bekerja sesuai pada MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Sederhana" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakia" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenia" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Afrika Selatan" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Uzbek Selatan" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanyol" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Tombol spesial (Ctrl+Alt+<key>) ditangani pada server" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "Srl" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (Cedilla)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Fonetik Standar" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standard RSTU pada layout Rusia" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Tombol mati Matahari" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Tukar Ctrl dan CapsLock" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Tujar ESC dan CapsLock" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Swedia" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Switzerland" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syria" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syriac" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syriac phonetic" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tajikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamil" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB Typewriter" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII Typewriter" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamil Unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailand" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetan" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetan (with ASCII numerals)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh Alternative" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh Alternative Phonetic" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh Extended" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh Alternative Phonetic" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh Phonetic" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Varian tilde (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Ke tombol dalam papan ketik Dvorak." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Ke tombol dalam papan ketik Qwerty." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" -msgstr "Fonetik Tradisional" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Traditional phonetic" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turki" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistan" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Typewriter" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW layout (accented letters only)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Keyboard Amerika dengan Bosnia digraphs" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Keyboard Amerika dengan huruf Bosnia" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Keyboard Amerika dengan Kroasia digraphs" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Keyboard Amerika dengan huruf Kroasia" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Keyboard Amerika dengan huruf Estonia" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Papan ketik AS dengan huruf Italia" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Keyboard Amerika dengan huruf Lituania" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Keyboard Amerika dengan huruf Slovenia" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraina" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Tambahan unicode (panah dan operator matematika)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Tambahan unicode (panah dan operator matematika). Operator matematika pada tingkat standar" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Inggris Raya" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, Fonetik alternatif" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, Fonetik" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Tombol Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Gunakan diagraph Bosnia" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Gunakan diagraph Kroasia" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Gunakan guillemets untuk tanda petik" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Gunakan keyboard LED untuk menunjukkan layout alternatif" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Menggunakan spasi untuk input karakter spasi yang tidak pecah" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Tombol spasi biasa pada semua tingkat" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistan" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 keypad dengan tambahan unicode (panah and operator matematika). " -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 keypad dengan tambahan unicode (panah and operator matematika). Operator matematika pada tingkat standar" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Western" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Tombol Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Dengan <\\|> key;tombol" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Dengan tanda Euro pada 5" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Dengan guillemets" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "menukar Z dan ZHE " -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/angka" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "digit" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "ganti titik koma dan tanda kutip (kuno)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, ditambah Backslash" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwertz/angka" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Menggabungkan aksen ketimbang tombol mati" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internasional (AltGr menggabungkan Unicode)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internasional (AltGr menggabungkan Unicode, alternatif)" + +#~ msgid "Keypad" +#~ msgstr "Keypad" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pro Keypad" + +#~ msgid "Standard Phonetic" +#~ msgstr "Fonetik Standar" + #~ msgid "Brazilian ABNT2" #~ msgstr "Brazilian ABNT2" diff --git a/xorg-server/xkbdata.src/po/it.po b/xorg-server/xkbdata.src/po/it.po index ad3302c78..c35cdac6e 100644 --- a/xorg-server/xkbdata.src/po/it.po +++ b/xorg-server/xkbdata.src/po/it.po @@ -33,10 +33,10 @@ # Luca Ferretti <elle.uca@infinito.it>, 2005, 2006, 2007, 2008, 2009. msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.6pre1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-13 21:28+0200\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 20:54+0200\n" "Last-Translator: Luca Ferretti <elle.uca@infinito.it>\n" "Language-Team: Italian <tp@lists.linux.it>\n" "MIME-Version: 1.0\n" @@ -469,158 +469,164 @@ msgstr "BGD" msgid "Bangladesh" msgstr "Bangladesh" -# codice tre lettere per belgio +# 1.7 +# Variante russa http://it.wikipedia.org/wiki/Baschiri #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Baschira" + +# codice tre lettere per belgio +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "BEL" # UE -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Bielorussia" # UE -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgio" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" # variante per india -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengali" # variante per bengali, credo sia fonetico (crf www.bengalinux.org) -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali probhat" # variante francese -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomica, tipo Dvorak" # variante francese -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomica, tipo Dvorak, solo latin-9" # codice tre lettere per bulgaria -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "BGR" # Codice tre lettere per buthan -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "BTN" # UE -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" # 1.2 -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Ebreo biblico (Tiro)" # codice tre lettere per bosnia-erz -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "BIH" # codice tre lettere per bielorussia -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "BLR" # UE -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnia-Erzegovina" # 1.5 -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Entrambi i tasti Alt insieme" # 1.5 -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Entrambi i tasti Ctrl insieme" # 1.5 -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Entrambi i tasti Maiusc insieme" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "BRA" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" # UE -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasile" # 1.5 # bre in iso639 -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretone" # Braille, shortDesc -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" # variante araba -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" # UE -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgaria" # 1.5 # variante pakistana -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" # 1.2 -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambogia" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "CAN" # UE -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Canada" @@ -629,36 +635,40 @@ msgstr "Canada" # Nota: talvota appare staccato, talvota attaccato # non so se per differenzaire il segnale dal pulsante (fisico) # nel dubbio separo anche in traduzione -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Blocca Maiusc" # 1.5 -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "BlocMaiusc" # 1.5 # per come appare, tradurre il "to" è superfluo -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "BlocMaiusc (prima disposizione), Maiusc+BlocMaiusc (ultima disposizione)" # 1.5 -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "BlocMaiusc (mentre è premuto), Alt+BlocMaiusc esegue l'azione blocca maiuscole originale" # 1.5 -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "BlocMaiusc agisce come Maiusc con il blocco. Maiusc \"mette in pausa\" BlocMaiusc" # 1.5 -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "BlocMaiusc agisce come Maiusc con il blocco. Maiusc non ha effetto su BlocMaiusc" +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "BlocMaiusc è disabilitato" + # optionList: caps # descrizione: CapsLock tweaks. "Internal" capitalization means capitalization # using some internal tables. Otherwise "as Shift" - means using next group @@ -673,17 +683,17 @@ msgstr "BlocMaiusc agisce come Maiusc con il blocco. Maiusc non ha effetto su Bl # ( ) Make CapsLock an additional ESC # ( ) Make CapsLock an additional Backspace # ( ) CapsLock toggles Shift so all keys are affected -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Comportamento tasto BlocMaiusc" # 1.5 -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "BlocMaiusc commuta Maiusc così da avere effetto su tutti i tasti" # 1.5 -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "BlocMaiusc commuta l'uso normale delle lettere maiuscole dei caratteri alfabetici" @@ -691,137 +701,137 @@ msgstr "BlocMaiusc commuta l'uso normale delle lettere maiuscole dei caratteri a # # "Internal" capitalization means capitalization using some internal tables. # Otherwise "as Shift" - means using next group. -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "BlocMaiusc fa uso interno delle lettere maiuscole. Maiusc \"mette in pausa\" BlocMaiusc" # 1.5 -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "BlocMaiusc fa uso interno delle lettere maiuscole. Maiusc non ha effetto su BlocMaiusc" # FIXME... trovare traduzione middle-dot -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Variante catalano con L middle-dot" # 1.5 # # variante romena (wikipedia mette la gl) -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cediglia" # codice tre lettere per la svizzera -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "CHE" # 1.5 # # variante USA -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" # 1.6 -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (opzione alternativa)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" # UE -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Cina" # variante russa -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chuvash" # variante russa -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chuvash latin" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Classica" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak classica" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" # variante USA -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq tastiera Easy Access" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 tasti)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 tasti)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 tasti)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq tastiera iPaq" @@ -839,57 +849,61 @@ msgstr "Compaq tastiera iPaq" # [ ] Caps Lock # [*] Less-than/Greater-than # -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Posizione tasto Compose" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Congo, Repubblica Democratica del" # 1.6 -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control + Alt + Backspace" # 1.5 -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Control è applicato ai tasti Alt, Alt è applicato ai tasti Win" # 1.5 -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Control è applicato ai tasti Win (e ai soliti tasti Ctrl)" +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + # 1.6 # variante rumena -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Tatar crimea (Dobruca-1 Q)" # 1.6 -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Tatar crimea (Dobruca-2 Q)" # 1.6 -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Tatar crimea (turca Alt-Q)" # 1.6 -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Tatar crimea (turca F)" # 1.6 -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Tatar crimea (turca Q)" # UE -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Croazia" @@ -904,57 +918,57 @@ msgstr "Croazia" # ( ) At bottom left # ( ) Right Ctrl as Right Alt # -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Posizione tasto Ctrl" # 1.5 -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Maiusc" # UE -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cirillico" # 1.2 -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cirillico con caporali («»)" # 1.5 -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cirillico, Z e ZHE scambiati" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "CZE" # UE -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Repubblica Ceca" # 1.6 # variante per lingua Kalmyk -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" # shortDesc per Congo, usato codice ISO -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "COD" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" # 1.5 # breve per Danimarca, usato codice iso3166 -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "DNK" @@ -963,7 +977,7 @@ msgstr "DNK" # rispetto alla tedesca normale cambiano due caratteri, ` e ^ # ah, le tastiere tedesche non hanno le lettere accentate, per cui # probabilemente 'sta cosa è importate per il Compose -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Acuto muto" @@ -972,661 +986,661 @@ msgstr "Acuto muto" # rispetto alla tedesca normale cambia un carattere, ^ # ah, le tastiere tedesche non hanno le lettere accentate, per cui # probabilemente 'sta cosa è importate per il Compose -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Acuto grave muto" # 1.5 -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Tasti predefiniti nel tastierino numerico" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101 tasti PC" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell portatile Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell portatile serie Precision M" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell portatile serie Latitude" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell tastiera USB multimediale" # UE -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danimarca" # codice tre lettere per germania< -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "DEU" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa tastiera Wireless Desktop" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond serie 9801/9802" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" # 1.5 -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (punteggiatura UK)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak internazionale" # 1.6 # variante polacca -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, virgolette polacche sul tasto 1" # 1.5 # # da controllare.. -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, virgolette polacche sul tasto quotemark" # 1.5 -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Orientale" # 1.5 -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Tasti muti esclusi" # 1.5 -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Abilitare caratteri tipografici aggiuntivi" # 1.6 # variante canadese -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Inglese" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" # 1.6 # lasciato enter, come nome di segnale # sono due uno è enter, l'altro return -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Enter sul tastierino numerico" # 1.5 # descrizione breve per Esperanto, usato codice iso639 tre lettere -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "EPO" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomica" # codice tre lettere per spagna -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "ESP" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" # codice tre lettere per estonia -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "EST" # UE -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estonia" # codice tre lettere per etiopia -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "ETH" # UE -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopia" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Tastiera gestita da Evdev" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" # Ewe: variante del Ghana -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Estesa" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Estesa - tasti Win" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Backslash esteso" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Variante lettera-F (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" # codice tre lettere per isole Faroe -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "FRO" # 1.5 -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Isole Fær Øer" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "FIN" # UE -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finlandia" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Tasto di quarto livello con separatori astratti" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Tasto di quarto livello con virgola" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Tasto di quarto livello con punto" # 1.5 -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Tasto di quarto livello con punto, restrizione latin-9" # http://en.wikipedia.org/wiki/Momayyez -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Tasto di quarto livello con momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "FRA" # UE -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Francia" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Francese" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Francese (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Francese (vecchia maniera)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Francese Dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Francese, tasti muti Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Francese, tasti muti rimossi" # 1.5 -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Portatile AMILO Fujitsu-Siemens Computers" # Fula: variante del Ghana -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" # Codice tre lettere per U.K. -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBR" # Ga: variante del ghana -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Generica 101 tasti PC" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Generica 102 tasti (Intl) PC" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Generica 104 tasti PC" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Generica 105 tasti (Intl) PC" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" # 1.6 -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "GEO" # UE -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgia" # Curiosamente è una variante delle tastiere italiane... -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgiana" # Questa invece variante delle tastiere francesi -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgiana AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Tedesca (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Tedesca, tasti muti Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Tedesca, tasti muti rimossi" # UE -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Germania" # shortDesc per Ghana, usato codice ISO -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "GHA" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" # codice tre lettere per grecia -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "GRC" # UE -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grecia" # 1.5 # variante olpc2 per USA -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Commuta gruppo sul tasto moltiplica/dividi" # shortDesc per Guinea, usato codice ISO -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "GIN" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" # Gujarati: variante india -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" # Gurmukhi: variante india -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" # Gurmukhi: variante india -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard per Mac" # Hausa: variante Ghana -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavillion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavillion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard Multimedia Keyboard SK-250x" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" # 1.5 -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Esadecimale" # Hindi Bolnagri: variante India -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" # 1.6 # variante indiana -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hindi Wx" # 1.5 # # variante ukraina -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Omofonica" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" # codice tre lettere per croazia -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "HRV" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "HUN" # UE -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Ungheria" # 1.5 -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper è applicato ai tasti Win" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO alternativa" # UE -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islanda" # Igbo: variante Nigeria -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" # variante LatAm -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Tilde muta inclusa" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "IND" # UE -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "India" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internazionale (tasti muti AltGr)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internazionale (con tasti muti)" # Inuktitut: variante canadese -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" # UE -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" # UE -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Iraq" # UE -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irlanda" # codice tre lettere per irlanda -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "IRL" # codice tre lettere per Iran -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "IRN" # codice tre lettere per iraq -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "IRQ" # Codice tre lettere per islanda< -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "ISL" # codice tre lettere per israele< -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "ISR" # UE -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israele" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "ITA" # UE -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italia" # UE -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Giappone" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Giappone (Serie PC-98xx)" @@ -1636,54 +1650,54 @@ msgstr "Giappone (Serie PC-98xx)" # <b>Japanese keyboard options</b> # [*] Kana Lock key is locking # [ ] NICOLA-F style Backspace -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Opzioni tastiera giapponese" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "JPN" # 1.5 # variante russa, in iso639 è XAL -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" # Kana: variante giappone -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Il tasto Kana Lock sta bloccando" # variante india -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" # Kashubian: variante polonia -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kashubian" # shortDesc per Kazakistan -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "KAZ" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazaka con russo" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakistan" # 1.6 -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Sequenza di tasti per terminare il server X" @@ -1704,7 +1718,7 @@ msgstr "Sequenza di tasti per terminare il server X" # [*] Right Alt, Shift+Right Alt key is Multi_Key # [ ] Right Alt key never chooses 3rd level # -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Tasto per scegliere il terzo livello" @@ -1743,68 +1757,62 @@ msgstr "Tasto per scegliere il terzo livello" # [ ] Left Ctrl # [*] Right Ctrl # -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Tasto o tasti per cambiare disposizione" -# variante iraniana senza numeri -# forse anche variante per altra lingua -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Tastierino" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" # 1.6 # shortDesc per Kyrgyzstan -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "KGZ" # shortDesc per Cambogia, usato codide ISO -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "KHM" # Komi: variante russa -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" # shortDesc per corea del sud, usato codice iso -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "KOR" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Corea, Repubblica di" # variante canadese -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Curda, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Curda, arabo-latina" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Curda, latina Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Curda, latina Q" # UE -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirghizistan" @@ -1812,442 +1820,457 @@ msgstr "Kirghizistan" # Short description per Latin American # include una lunga serie di nazioni: AR, Bo, CL, CO, CR, CU, DO... # -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LatAm" # 1.5 # variante lituana -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" # 1.5 # variante lituana -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "LAO" # UE -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Compaq Laptop tastiera per portatile (es. Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Compaq Internet Keyboard per portatile (es. Presario)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Portatile eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latino" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latino americano" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latino Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latino Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latino qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latino unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latino unicode qwerty" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latino con caporali («»)" # UE -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lettonia" # 1.5 # descr breve per Lettonia, usato codice iso3166 -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "LVA" # 1.5 -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Alt sinistro" # 1.5 -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Alt sinistro (mentre è premuto)" # 1.5 -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Alt sinistro è scambiato con Win sinistro" # 1.5 -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Ctrl sinistro" # 1.5 -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Ctrl sinistro+Maiusc sinistro" # 1.5 -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Maiusc sinistro" # 1.5 -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Win sinistro" # 1.5 -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Win sinistro (prima disposizione), Win/Menu destro (ultima disposizione)" # 1.5 -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Win sinistro (mentre è premuto)" # UE -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Mano sinistra" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorak mancina" # 1.5 -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Vecchia maniera" # 1.5 -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Wang 724 vecchia maniera" # 1.5 #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Tasto vecchia maniera con virgola" # 1.5 -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Tasto vecchia maniera con punto" # 1.5 -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Minore-di/Maggiore-di" # UE -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Lituania" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (opzione alternativa)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (opzione alternativa 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Tasti aggiuntivi Logitech attraverso G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech tastiera generica" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (modello Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" # 1.5 # codice iso639: dsb # FIXME tradotto come in iso-codes, ma inferiore nun se po' vede... -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Sorabo inferiore" # 1.5 # FIXME tradotto come in iso-codes, ma inferiore nun se po' vede... -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Sorabo inferiore (qwertz)" # codice tre lettere per lituania -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "LTU" # variante della Georgia -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" # shortDesc per Montenegro, usato ISO -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Macedonia" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh Old" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, tasti muti Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, tasti muti rimossi" # 1.5 -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Rendere BlocMaiusc un Backspace aggiuntivo" # 1.5 -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Rendere BlocMaiusc un Ctrl aggiuntivo" # 1.5 -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Rendere BlocMaiusc un ESC aggiuntivo" +# 1.7 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Rendere BlocMaiusc un Hyper aggiuntivo" + +# 1.7 +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Rendere BlocMaiusc un BlocNum aggiuntivo" + +# 1.7 +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Rendere BlocMaiusc un Super aggiuntivo" + # codice tre lettere per maldive -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "MDV" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" # UE -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldive" # UE -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Tastiera maltese con disposizione US" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" # 1,5 # il tasto Menu -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Menu" # 1.5 -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta è applicato al tasto Win sinistro" # 1.5 -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta è applicato ai tasti Win" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, svedese" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" @@ -2266,180 +2289,186 @@ msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" # # [*] Enable extra typographic characters # -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Opzioni varie di compatibilità " # codice tre lettere per macedonia -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "MKD" # codice tre lettere per malta -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "MLT" # codice tre lettere per birmania -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "MMR" # codice tre lettere per mongolia -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "MNG" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolia" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marocco" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Multilingue" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Multilingue, prima parte" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Multilingue, seconda parte" # UE -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Birmania" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Backspace stile NICOLA-F" # 1.5 # variante pakistana -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" # 1.5 # variante brasiliana -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" # 1.5 # variante brasiliana -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo per Esperanto" # 1.5 # variante brasiliana -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo per tastiere USA" # 1.5 # variante tetheska.... ehm tedesca -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" # shortDesc per Nepal, usato ISO -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "NPL" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" # UE -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Paesi Bassi" +# 1.7 +# variante bulgare +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Fonetica nuova" + # shortDesc per Nigeria, usato ISO -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "NGA" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" # codice tre lettere per paesi bassi -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "NLD" # 1.5 -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Carattere Spazio non-interrompibile al quarto livello" # 1.5 -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Carattere Spazio non-interrompibile al quarto livello, carattere Spazio sottile non-interrompibile al sesto livello" # 1.5 -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Carattere Spazio non-interrompibile al quarto livello, carattere Spazio sottile non-interrompibile al sesto livello (attraverso Ctrl+Maiusc)" # 1.5 -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Carattere Spazio non-interrompibile al secondo livello" # 1.5 -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Carattere Spazio non-interrompibile al terzo livello" # 1.5 -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Carattere Spazio non-interrompibile al terzo livello, niente al quarto livello" # 1.5 -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Carattere Spazio non-interrompibile al terzo livello, carattere Spazio sottile non-interrompibile al quarto livello" # codice tre lettere per norvegia -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "NOR" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Saami settentrinale" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Saami settentrionale, tasti muti rimossi" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" # UE -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norvegia" # 1.5 -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "BlocNum" @@ -2456,12 +2485,12 @@ msgstr "BlocNum" # ( ) Four-level key with momayyez # ( ) Four-level key with abstract separators # ( ) Semi-colon on third level -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Comportamento tasto Canc su tastierino numerico" # 1.5 -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "I tasti del tastierino numerico operano come nei Mac" @@ -2478,313 +2507,308 @@ msgstr "I tasti del tastierino numerico operano come nei Mac" # ( ) Hexadecimal # ( ) ATM/phone-style # -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Selezione disposizione tastierino numerico" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Uzbeco meridionale" # 1.6 # variante francese -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Occitana" # Variante irlandese -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" # variante bangladesh -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Osseta" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Osseta, Winkeys" # 1.5 -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Osseta, vecchia maniera" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "Serie PC-98xx" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "PAK" # UE -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" # Variante tailandese -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +# 1.7 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persiana, con tastierino numerico persiano" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetico" # 1.6 # variante russa -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Fonetica tasti Win" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "POL" # UE -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polonia" # Variante greca -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Politonica" # UE -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portogallo" -# Variante iraniana con numeri (fila alta e tastierino numerico) -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -# Variante iraniana con numeri in fila alte e lettere sul tastierino -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro con tastierino" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" # 1.5 -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorak per programmatori" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" # codice tre lettere per portogallo -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "PRT" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" # 1.5 -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Alt destro" # 1.5 -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Alt destro (mentre è premuto)" # 1.5 -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Il tasto Alt destro non sceglie mai il terzo livello" # 1.5 -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Alt destro, il tasto Maiusc+Alt destro è Multi_Key" # 1.5 -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Ctrl destro" # 1.5 -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Ctrl destro (mentre è premuto)" # 1.5 -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Ctrl destro come Alt destro" # 1.5 -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Maiusc destro" # 1.5 -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Win destro" # 1.5 -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Win destro (mentre è premuto)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Mano destra" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorak destrorsa" # UE -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Romania" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Tastiera rumena con lettere tedesche" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Tastiera rumena con lettere tedesche, tasti muti rimossi" # codice tre lettere per romania -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "ROU" # codice tre lettere per russia -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "RUS" # UE -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Russia" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Russa" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Fonetica russa" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Dvorak fonetica russa" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Fonetica russa, tasti muti rimossi" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Russa con kazaca" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" # shortDesc per Serbia, usato codice ISO -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" # 1.6 # non so perché messo nella forma estesa # ma ripropongo anche in italiano -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Blocca scorrimento" # 1.5 -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "BlocScorr" # 1.5 # variante canadese # No ISO code in ISO639-2, only draft ISO693-3 -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" @@ -2792,434 +2816,432 @@ msgstr "Secwepemctsin" # # parte di Numeric keypad delete key behaviour # vedi descrizione compelta in altro commento -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Punto e virgola sul terzo livello" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbia" # 1.5 -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Maiusc annulla BlocMaiusc" # 1.5 -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Maiusc non annulla BlocNum, invece sceglie il terzo livello" # 1.5 -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Maiusc con i tasti del tastierino numerico opera come in MS Windows" # 1.5 -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Maiusc+BlocMaiusc" # 1.5 # variante greca -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Semplice" # UE -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovacchia" # UE -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenia" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Sud Africa" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Uzbeko meridionale" # UE -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spagna" # 1.5 -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Tasti speciali (Ctrl+Alt+<tasto>) gestiti in un server" # codice tre lettere per SriLanka -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "LKA" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" # 1.5 -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (cediglia)" -# 1.6 -# variante bulgara -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Fonetica standard" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "RSTU standard" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "RSTU standard su disposizione russa" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Tasti muti Sun" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" # 1.5 -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" # codice tre lettere per repubblica slovacca -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "SVK" # codice tre lettere per slovenia -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "SVN" # 1.5 -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Scambiare Ctrl e BlocMaiusc" # 1.5 -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Scambiare ESC e BlocMaiusc" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "SWE" # UE -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Svezia" # UE -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Svizzera" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "SYR" # UE -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Siria" # L'aggettivo per Siria in iglese EU sarebbe Syrian # -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Siriano" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Siriano fonetico" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" # UE -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tagikistan" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamil" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB macchina per scrivere" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII macchina per scrivere" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamil Unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" # 1.5 # variante russa, come lingua stado a iso639 sarebbe tatarico -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telegu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "THA" # UE -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailandia" # 1.5 -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetana" # 1.5 -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetana (con numeri ASCII)" # 1.5 # variante marocchina, corrispondente al codice iso639 BER (berbero) -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" # 1.5 # variante marocchina -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternativa" # 1.5 # variante marocchina -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh alternativa fonetica" # 1.5 # variante marocchina -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh estesa" # 1.5 # variante marocchina -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh estesa fonetica" # 1.5 # variante marocchina -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh fonetica" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Variante tilde (~)" # codice tre lettere per tajikistan -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "TJK" # 1.5 -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Al tasto corrispondente in una tastiera Dvorak." # 1.5 -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Al tasto corrispondente in una tastiera Qwerty." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" # 1.6 # variante bulgara -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Fonetica tradizionale" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" # 1.6 -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "TUR" # 1.5 -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turca" # 1.6 # non controllato su UE -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Turkmenistan" # Non sono sicuro vada tradotto -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Macchina per scrivere" # 1.5 -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Disposizione UCW (solo lettere accentate)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Tastiera USA con digrammi bosniaci" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Tastiera USA con lettere bosniache" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Tastiera USA con digrammi croati" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Tastiera USA con lettere croate" # 1.5 -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Tastiera USA con lettere estoni" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Tastiera USA con lettere italiane" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Tastiera USA con lettere lituane" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Tastiera USA con lettere slovene" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" # 1.5 # variante russa -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "UKR" # UE -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ucraina" # 1.5 -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Aggiunte unicode (frecce e operatori matematici)" # 1.5 -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Aggiunte unicode (frecce e operatori matematici). Operatori matematici sul livello predefinito" # Sarà da tradurre? -Luca -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeEsperto" # UE -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Regno Unito" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" # 1.5 -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, alternativa fonetica" # 1.5 -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, fonetica" # 1.5 -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, tasti Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Usa digrammi bosniaci" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Usa digrammi croati" # 1.5 -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Usa caporali per virgolette" @@ -3232,7 +3254,7 @@ msgstr "Usa caporali per virgolette" # [ ] CapsLock # [*] ScrollLock # -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Usare i LED della tastiera per mostrare il gruppo alternativo" @@ -3250,116 +3272,116 @@ msgstr "Usare i LED della tastiera per mostrare il gruppo alternativo" # ( ) Non-breakable space character at fourth level, thin non-breakable space character at sixth level # ( ) Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift) # -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Uso del tasto Spazio per inserire carattere di spazio non-interrompibile" # 1.5 -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Solito Spazio a ogni livello" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "UZB" # UE -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistan" # UE -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "VNK" # 1.5 -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Tastierino Wang 724 con aggiunte unicode (frecce e operatori matematici)" # 1.5 -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Tastierino Wang 724 con aggiunte unicode (frecce e operatori matematici). Operatori matematici sul livello predefinito" # 1.5 # variante belga -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang modello 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Occidentale" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" # variante bielorussa -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Tasti Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Con tasti <\\|>" # 1.5 -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Con simbolo € sul 5" # 1.5 -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Con caporali" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" # 1.5 # codice iso sah -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" # 1.5 # codice iso yor, yo -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" # 1.5 -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z e ZHE scambiati" # 1.5 # descrione breve per sudafrica, usato iso3166 3 caratteri -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "ZAF" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/cifre" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "cifre" @@ -3371,55 +3393,62 @@ msgstr "cifre" # 3) soppiantare # # sarà corretto spostate??? -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "Punto e virgola e virgolette spostate (obsoleta)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, backslash esteso" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "querty/cifre" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" -#~ msgid "Brazilian ABNT2" -#~ msgstr "Brasiliana ABNT2" - -#~ msgid "Japanese 106-key" -#~ msgstr "Giapponese 106 tasti" - -# 1.5 -# shortDesc per Kyrgyzstan, usato codice iso3166 -#~ msgid "Kir" -#~ msgstr "KGZ" - -#~ msgid "Korean 106-key" -#~ msgstr "Coreana 106 tasti" - -# 1.5 -#~ msgid "Super is mapped to Win keys" -#~ msgstr "Super è applicato ai tasti Win" - -# o slovacchi? -#~ msgid "US keyboard with Slovenian digraphs" -#~ msgstr "Tastiera USA con digrammi sloveni" - -# 1.5 -#~ msgid "Unicode" -#~ msgstr "Unicode" - -#~ msgid "Use Slovenian digraphs" -#~ msgstr "Usa digrammi sloveni" +# 1.7 +# layout a parte, sembrerebbe inglese +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +# 1.7 +# No ISO code in ISO639-2, only draft ISO693-3 +# Atsina refers to the Gros Ventres tribe. +# http://en.wikipedia.org/wiki/Atsina_(disambiguation) +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +# 1.7 +# variante serba +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Combinazione di accenti invece di tasti muti" + +# 1.7 +# http://en.wikipedia.org/wiki/Interior_Salish_languages +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +# 1.7 +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internazionale (combinazione Unicode AltGr)" + +# 1.7 +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internazionale (combinazione Unicode AltGr, alternativa)" diff --git a/xorg-server/xkbdata.src/po/ky.po b/xorg-server/xkbdata.src/po/ky.po index d6c99c008..231961dde 100644 --- a/xorg-server/xkbdata.src/po/ky.po +++ b/xorg-server/xkbdata.src/po/ky.po @@ -1,13 +1,14 @@ # Translation of 'xkeyboard-config' messages to Kirghiz. # Copyright (C) 2002 Free Software Foundation, Inc. -# Ilyas Bakirov <just_ilyas@yahoo.com>, 2007. +# This file is distributed under the same license as the xkeyboard-config package. +# Ilyas Bakirov <just_ilyas@yahoo.com>, 2009. # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.1-pre1\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2007-09-11 22:14+0100\n" -"PO-Revision-Date: 2007-11-13 14:39+0600\n" +"Project-Id-Version: xkeyboard-config 1.6pre1\n" +"Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" +"POT-Creation-Date: 2009-05-12 23:49+0100\n" +"PO-Revision-Date: 2009-06-07 23:39+0600\n" "Last-Translator: Ilyas Bakirov <just_ilyas@yahoo.com>\n" "Language-Team: Kirghiz <i18n-team-ky-kyrgyz@lists.sourceforge.net>\n" "MIME-Version: 1.0\n" @@ -33,132 +34,132 @@ msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(ÐÑкирген) Ðльтернативдик, атайын (dead keys) клавишаларÑыз" #: ../rules/base.xml.in.h:5 -msgid "(Legacy) Dvorak" -msgstr "(ÐÑкирген) Dvorak" - -#: ../rules/base.xml.in.h:6 msgid "101/104 key Compatible" msgstr "101/104 баÑкычтар менен жарамдуу" -#: ../rules/base.xml.in.h:7 ../rules/sun.xml.in.h:2 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "pc101, qwerty, үтүр, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:8 ../rules/sun.xml.in.h:3 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "pc101, qwerty, үтүр, атайын (dead keys) клавишаларÑыз " -#: ../rules/base.xml.in.h:9 ../rules/sun.xml.in.h:4 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "pc101, qwerty, чекит, атайын (dead keys) клавшилары менен" -#: ../rules/base.xml.in.h:10 ../rules/sun.xml.in.h:5 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "pc101, qwerty, үтур, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:11 ../rules/sun.xml.in.h:6 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "pc101, qwertz, үтур, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:12 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "pc101, qwertz, үтүр, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:13 ../rules/sun.xml.in.h:7 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "pc101, qwertz, чекит, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:14 ../rules/sun.xml.in.h:8 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "pc101, qwertz, чекит, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:15 ../rules/sun.xml.in.h:9 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "pc102, qwerty, үтүр, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:16 ../rules/sun.xml.in.h:10 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "pc102, qwerty, үтүр, атаыйн (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:17 ../rules/sun.xml.in.h:11 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "pc102, qwerty, чекит, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:18 ../rules/sun.xml.in.h:12 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "pc102, qwerty, чекит, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:19 ../rules/sun.xml.in.h:13 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "pc102, qwertz, үтүр, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:20 ../rules/sun.xml.in.h:14 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "pc102, qwertz, үтур, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:21 ../rules/sun.xml.in.h:15 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "pc102, qwertz, чекит, атайын (dead keys) клавишалары менен" -#: ../rules/base.xml.in.h:22 ../rules/sun.xml.in.h:16 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "pc102, qwertz, чекит, атайын (dead keys) клавишаларÑыз" +#: ../rules/base.xml.in.h:22 +msgid "2" +msgstr "2" + #: ../rules/base.xml.in.h:23 +msgid "4" +msgstr "4" + +#: ../rules/base.xml.in.h:24 +msgid "5" +msgstr "5" + +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:24 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:25 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech Wireless Desktop RFKB-23" -#: ../rules/base.xml.in.h:26 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI Ñтандарттуу" -#: ../rules/base.xml.in.h:27 -msgid "AZERTY Tskapo" -msgstr "AZERTY Tskapo" +#: ../rules/base.xml.in.h:29 +msgid "ATM/phone-style" +msgstr "" -#: ../rules/base.xml.in.h:28 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:29 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:30 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:31 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Acer ноутбугу" -#: ../rules/base.xml.in.h:32 -msgid "Add the EuroSign to the 2 key." -msgstr "2 денег клавишага Евро белгиÑин кошуу." - -#: ../rules/base.xml.in.h:33 -msgid "Add the EuroSign to the 5 key." -msgstr "5 деген клавишага Евро белгиÑин кошуу." - #: ../rules/base.xml.in.h:34 -msgid "Add the EuroSign to the E key." -msgstr "E клавишаÑына Евро белгиÑин кошуу." +msgid "Add the standard behavior to Menu key" +msgstr "" #: ../rules/base.xml.in.h:35 -msgid "Add the standard behavior to Menu key." +msgid "Adding Esperanto circumflexes (supersigno)" msgstr "" #: ../rules/base.xml.in.h:36 -msgid "Adding the EuroSign to certain keys" -msgstr "" +msgid "Adding EuroSign to certain keys" +msgstr "Белгилүү клавишаларга Евро белгиÑин кошуу." #: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" @@ -185,2498 +186,2807 @@ msgid "Albania" msgstr "ÐлбаниÑ" #: ../rules/base.xml.in.h:43 -msgid "Alt and Meta are on the Alt keys." -msgstr "Alt жана Meta Alt клавишаларда." +msgid "Alt and Meta are on Alt keys" +msgstr "Alt жана Meta Alt клавишаларда" #: ../rules/base.xml.in.h:44 -msgid "Alt is mapped to the right Win-key and Super to Menu." -msgstr "Alt оң Win клавишага орнотулган, Super болÑо - Menu." +msgid "Alt is mapped to Right Win, Super to Menu" +msgstr "Alt is mapped to Right Win, Super to Menu" #: ../rules/base.xml.in.h:45 -msgid "Alt+CapsLock changes layout." -msgstr "Alt+CapsLock раÑкладканы алмаштырат." +msgid "Alt+CapsLock" +msgstr "Alt+CapsLock" #: ../rules/base.xml.in.h:46 -msgid "Alt+Ctrl change layout." -msgstr "Alt+Ctrl раÑкладканы алмаштырат." +msgid "Alt+Ctrl" +msgstr "Alt+Ctrl" #: ../rules/base.xml.in.h:47 -msgid "Alt+Shift change layout." -msgstr "Alt+Shift раÑкладканы алмаштырат." +msgid "Alt+Shift" +msgstr "Alt+Shift" #: ../rules/base.xml.in.h:48 +msgid "Alt+Space" +msgstr "Alt+Боштук" + +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:49 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Alt/Win клавишалары" -#: ../rules/base.xml.in.h:50 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "Ðльтернативдик" -#: ../rules/base.xml.in.h:51 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "Ðльтернативдик" -#: ../rules/base.xml.in.h:52 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "Ðльтернативдүү фонетикалык" -#: ../rules/base.xml.in.h:53 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "Ðларалык Ðльтернативдик (мурунку us_intl)" -#: ../rules/base.xml.in.h:54 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "Ðльтернативдик, атайын (dead keys) Sun клавишалары менен" -#: ../rules/base.xml.in.h:55 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "Ðльтернативдик, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:56 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "Ðльтернативдик, latin-9 гана" -#: ../rules/base.xml.in.h:57 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "Ðнд" -#: ../rules/base.xml.in.h:58 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Ðндорра" -#: ../rules/base.xml.in.h:59 +#: ../rules/base.xml.in.h:60 +msgid "Any Alt key" +msgstr "" + +#: ../rules/base.xml.in.h:61 +#, fuzzy +msgid "Any Win key" +msgstr "Windows клавиатураÑÑ‹" + +#: ../rules/base.xml.in.h:62 +msgid "Any Win key (while pressed)" +msgstr "" + +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Вариант апоÑтроф (') менен" -#: ../rules/base.xml.in.h:60 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:61 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Apple Ðоутбугу" -#: ../rules/base.xml.in.h:62 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ðра" -#: ../rules/base.xml.in.h:63 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Ðраб" -#: ../rules/base.xml.in.h:64 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Ðрм" -#: ../rules/base.xml.in.h:65 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "ÐрмениÑ" -#: ../rules/base.xml.in.h:66 +#: ../rules/base.xml.in.h:70 +msgid "Asturian variant with bottom-dot H and bottom-dot L" +msgstr "" + +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Asus ноутбугу" -#: ../rules/base.xml.in.h:67 +#: ../rules/base.xml.in.h:72 +#, fuzzy +msgid "At bottom left" +msgstr "Ctrl клавишаÑÑ‹ төмөн Ñол жакта жайгашкан" + +#: ../rules/base.xml.in.h:73 +#, fuzzy +msgid "At left of 'A'" +msgstr "Ctrl клавишаÑÑ‹ 'Ф' клавишанын Ñол жагында" + +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Ðзр" -#: ../rules/base.xml.in.h:68 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Ðзербайджан" -#: ../rules/base.xml.in.h:69 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 wireless Internet Keyboard" -#: ../rules/base.xml.in.h:70 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:71 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:72 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:73 +#: ../rules/base.xml.in.h:80 +msgid "BTC 6301URF" +msgstr "BTC 6301URF" + +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:74 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:75 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:76 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:77 +#: ../rules/base.xml.in.h:85 +msgid "BTC 9116U Mini Wireless Internet and Gaming" +msgstr "BTC 9116U Mini Wireless Internet and Gaming" + +#: ../rules/base.xml.in.h:86 +msgid "Baltic+" +msgstr "Baltic+" + +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Бан" -#: ../rules/base.xml.in.h:78 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Бангладеш" -#: ../rules/base.xml.in.h:79 ../rules/sun.xml.in.h:22 +#: ../rules/base.xml.in.h:89 msgid "Bel" msgstr "Бел" -#: ../rules/base.xml.in.h:80 +#: ../rules/base.xml.in.h:90 msgid "Belarus" msgstr "БеларуÑиÑ" -#: ../rules/base.xml.in.h:81 +#: ../rules/base.xml.in.h:91 msgid "Belgium" msgstr "БельгиÑ" -#: ../rules/base.xml.in.h:82 +#: ../rules/base.xml.in.h:92 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:83 +#: ../rules/base.xml.in.h:93 +msgid "BenQ X-Touch 730" +msgstr "BenQ X-Touch 730" + +#: ../rules/base.xml.in.h:94 +msgid "BenQ X-Touch 800" +msgstr "BenQ X-Touch 800" + +#: ../rules/base.xml.in.h:95 msgid "Bengali" msgstr "Бенгальдык" -#: ../rules/base.xml.in.h:84 +#: ../rules/base.xml.in.h:96 msgid "Bengali Probhat" msgstr "Бенгальдык Пробат" -#: ../rules/base.xml.in.h:85 +#: ../rules/base.xml.in.h:97 msgid "Bepo, ergonomic, Dvorak way" msgstr "Бепо, Ñргономикалык, Dvorak'ка окшош" -#: ../rules/base.xml.in.h:86 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Бепо, Ñргономикалык, Dvorak'ка окшош, latin-9 гана" -#: ../rules/base.xml.in.h:87 ../rules/sun.xml.in.h:24 +#: ../rules/base.xml.in.h:99 msgid "Bgr" msgstr "Болг" -#: ../rules/base.xml.in.h:88 +#: ../rules/base.xml.in.h:100 msgid "Bhu" msgstr "Бут" -#: ../rules/base.xml.in.h:89 +#: ../rules/base.xml.in.h:101 msgid "Bhutan" msgstr "Бутан" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:102 msgid "Biblical Hebrew (Tiro)" msgstr "Библейдик иврит (Tiro)" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:103 msgid "Bih" msgstr "БоÑн" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:104 msgid "Blr" msgstr "Бел" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:105 msgid "Bosnia and Herzegovina" msgstr "БоÑÐ½Ð¸Ñ Ð¶Ð°Ð½Ð° ГерциговиниÑ" -#: ../rules/base.xml.in.h:94 -msgid "Both Alt keys together change layout." -msgstr "" - -#: ../rules/base.xml.in.h:95 -msgid "Both Ctrl keys together change layout." -msgstr "" +#: ../rules/base.xml.in.h:106 +msgid "Both Alt keys together" +msgstr "Ðки Alt клавишалары бирге" -#: ../rules/base.xml.in.h:96 -msgid "Both Shift keys together change layout." -msgstr "" +#: ../rules/base.xml.in.h:107 +msgid "Both Ctrl keys together" +msgstr "Ðки Ctrl клавишалары бирге" -#: ../rules/base.xml.in.h:97 -msgid "Both Win-keys switch layout while pressed." -msgstr "" +#: ../rules/base.xml.in.h:108 +msgid "Both Shift keys together" +msgstr "Ðки Shift клавишалары бирге" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:109 msgid "Bra" msgstr "Бра" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:110 msgid "Braille" msgstr "Браиил" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:111 msgid "Brazil" msgstr "БразилиÑ" -#: ../rules/base.xml.in.h:101 -msgid "Brazilian ABNT2" -msgstr "Бразилдик ABNT2" +#: ../rules/base.xml.in.h:112 +msgid "Breton" +msgstr "Бретон" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:113 msgid "Brl" msgstr "Брл" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:114 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:115 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:116 msgid "Bulgaria" msgstr "БолгариÑ" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:117 +msgid "CRULP" +msgstr "" + +#: ../rules/base.xml.in.h:118 msgid "Cambodia" msgstr "КамбоджиÑ" -#: ../rules/base.xml.in.h:107 ../rules/sun.xml.in.h:29 +#: ../rules/base.xml.in.h:119 msgid "Can" msgstr "Кан" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:120 msgid "Canada" msgstr "Канада" -#: ../rules/base.xml.in.h:109 -msgid "Caps Lock is Compose." -msgstr "Caps Lock Compose клавишаÑÑ‹." +#: ../rules/base.xml.in.h:121 +msgid "Caps Lock" +msgstr "Caps Lock" -#: ../rules/base.xml.in.h:110 -msgid "CapsLock LED shows alternative layout." -msgstr "" +#: ../rules/base.xml.in.h:122 +msgid "CapsLock" +msgstr "CapsLock" -#: ../rules/base.xml.in.h:111 -msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock." +#: ../rules/base.xml.in.h:123 +msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "" -#: ../rules/base.xml.in.h:112 -msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock." +#: ../rules/base.xml.in.h:124 +msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "" -#: ../rules/base.xml.in.h:113 -msgid "CapsLock just locks the Shift modifier." +#: ../rules/base.xml.in.h:125 +msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "" -#: ../rules/base.xml.in.h:114 ../rules/sun.xml.in.h:33 +#: ../rules/base.xml.in.h:126 +#, fuzzy +msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" +msgstr "Shift блокировка менен амал жаÑайт. Shift Caps амалына тоÑкол болбойт." + +#: ../rules/base.xml.in.h:127 msgid "CapsLock key behavior" msgstr "" -#: ../rules/base.xml.in.h:115 -msgid "CapsLock key changes layout." +#: ../rules/base.xml.in.h:128 +msgid "CapsLock toggles Shift so all keys are affected" msgstr "" -#: ../rules/base.xml.in.h:116 -msgid "CapsLock toggles Shift so all keys are affected." +#: ../rules/base.xml.in.h:129 +msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "" -#: ../rules/base.xml.in.h:117 -msgid "CapsLock toggles normal capitalization of alphabetic characters." -msgstr "" +#: ../rules/base.xml.in.h:130 +#, fuzzy +msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" +msgstr "Ички капитализацыÑны ачат. Shift CapsLock амалын токтотот." -#: ../rules/base.xml.in.h:118 -msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock." -msgstr "" +#: ../rules/base.xml.in.h:131 +#, fuzzy +msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" +msgstr "Ички капитализацыÑны ачат. Shift CapsLock амалына тааÑир тийгизбейт." -#: ../rules/base.xml.in.h:119 -msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock." +#: ../rules/base.xml.in.h:132 +msgid "Catalan variant with middle-dot L" msgstr "" -#: ../rules/base.xml.in.h:120 -msgid "Catalan variant with middle-dot L" +#: ../rules/base.xml.in.h:133 +msgid "Cedilla" msgstr "" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:134 msgid "Che" msgstr "Че" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:135 +msgid "Cherokee" +msgstr "" + +#: ../rules/base.xml.in.h:136 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:137 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:138 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (альтернативдик)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:139 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:140 +msgid "Cherry CyMotion Expert" +msgstr "Cherry CyMotion Expert" + +#: ../rules/base.xml.in.h:141 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:143 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:144 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:145 +msgid "Chicony KU-0108" +msgstr "Chicony KU-0108" + +#: ../rules/base.xml.in.h:146 +msgid "Chicony KU-0420" +msgstr "Chicony KU-0420" + +#: ../rules/base.xml.in.h:147 msgid "China" msgstr "Кытай" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:148 msgid "Chuvash" msgstr "Чуваш" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:149 msgid "Chuvash Latin" msgstr "Чуваш латындык" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:150 +#, fuzzy +msgid "Classic" +msgstr "КлаÑÑикалык Дровак" + +#: ../rules/base.xml.in.h:151 msgid "Classic Dvorak" msgstr "КлаÑÑикалык Дровак" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:152 msgid "Classmate PC" -msgstr "" +msgstr "Classmate PC" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:153 msgid "CloGaelach" -msgstr "" +msgstr "CloGaelach" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:154 msgid "Colemak" msgstr "" -#: ../rules/base.xml.in.h:136 -msgid "Commabelow" -msgstr "" - -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:155 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:156 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq \"Интернет\" клавиатураÑÑ‹ (13 клавиша менен)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:157 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq \"Интернет\" клавиатураÑÑ‹ (18 клавиша менен)" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq \"Интернет\" клавиатураÑÑ‹ (7 клавиша менен)" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:159 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:160 msgid "Compose key position" msgstr "" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:161 msgid "Congo, Democratic Republic of the" msgstr "" -#: ../rules/base.xml.in.h:144 -msgid "Control is mapped to the Win-keys (and the usual Ctrl keys)." +#: ../rules/base.xml.in.h:162 +msgid "Control + Alt + Backspace" msgstr "" -#: ../rules/base.xml.in.h:145 -msgid "Croatia" -msgstr "ХорватиÑ" +#: ../rules/base.xml.in.h:163 +msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" +msgstr "" -#: ../rules/base.xml.in.h:146 -msgid "Ctrl key at bottom left" -msgstr "Ctrl клавишаÑÑ‹ төмөн Ñол жакта жайгашкан" +#: ../rules/base.xml.in.h:164 +msgid "Control is mapped to Win keys (and the usual Ctrl keys)" +msgstr "" -#: ../rules/base.xml.in.h:147 -msgid "Ctrl key at left of 'A'" -msgstr "Ctrl клавишаÑÑ‹ 'Ф' клавишанын Ñол жагында" +#: ../rules/base.xml.in.h:165 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:166 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "" + +#: ../rules/base.xml.in.h:167 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "" + +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Turkish F)" +msgstr "" + +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Turkish Q)" +msgstr "" + +#: ../rules/base.xml.in.h:170 +msgid "Croatia" +msgstr "ХорватиÑ" + +#: ../rules/base.xml.in.h:171 msgid "Ctrl key position" msgstr "Ctrl клавишанын жайгашууÑу" -#: ../rules/base.xml.in.h:149 -msgid "Ctrl+Shift change layout." -msgstr "" +#: ../rules/base.xml.in.h:172 +msgid "Ctrl+Shift" +msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:173 msgid "Cyrillic" msgstr "Кириллица" -#: ../rules/base.xml.in.h:151 ../rules/sun.xml.in.h:39 +#: ../rules/base.xml.in.h:174 +#, fuzzy +msgid "Cyrillic with guillemets" +msgstr "Француздук тырмакчалар менен" + +#: ../rules/base.xml.in.h:175 +#, fuzzy +msgid "Cyrillic, Z and ZHE swapped" +msgstr "З жана Ж орундарын алмаштырган" + +#: ../rules/base.xml.in.h:176 msgid "Cze" msgstr "Чех" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:177 msgid "Czechia" msgstr "ЧехиÑ" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:178 +msgid "DOS" +msgstr "" + +#: ../rules/base.xml.in.h:179 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:180 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:155 ../rules/sun.xml.in.h:42 +#: ../rules/base.xml.in.h:181 +#, fuzzy +msgid "Dan" +msgstr "Бан" + +#: ../rules/base.xml.in.h:182 msgid "Dead acute" msgstr "Dead acute атайын Ñимволу" -#: ../rules/base.xml.in.h:156 ../rules/sun.xml.in.h:43 +#: ../rules/base.xml.in.h:183 msgid "Dead grave acute" msgstr "Dead grave acute атайын Ñимволу" -#: ../rules/base.xml.in.h:157 -msgid "Default numeric keypad keys." +#: ../rules/base.xml.in.h:184 +msgid "Default numeric keypad keys" msgstr "" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:185 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:186 msgid "Dell 101-key PC" msgstr "Dell 101-клавиша менен PC" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:187 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Inspiron 6xxx/8xxx ноутбугу" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:188 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Precision M ÑериÑлуу ноутбугу" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:189 msgid "Dell Latitude series laptop" msgstr "Dell Latitude ÑериÑлуу ноутбугу" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:190 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:164 -msgid "Dell USB Multimedia Keybard" -msgstr "Dell USB Multimedia Keybard" +#: ../rules/base.xml.in.h:191 +msgid "Dell SK-8125" +msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:192 +msgid "Dell SK-8135" +msgstr "Dell SK-8135" + +#: ../rules/base.xml.in.h:193 +msgid "Dell USB Multimedia Keyboard" +msgstr "Dell USB Multimedia Keyboard" + +#: ../rules/base.xml.in.h:194 msgid "Denmark" -msgstr "" +msgstr "ДаниÑ" -#: ../rules/base.xml.in.h:166 ../rules/sun.xml.in.h:44 +#: ../rules/base.xml.in.h:195 msgid "Deu" -msgstr "" +msgstr "Ðем" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:196 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:197 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 ÑериÑлары" -#: ../rules/base.xml.in.h:169 ../rules/sun.xml.in.h:46 -msgid "Dnk" -msgstr "" - -#: ../rules/base.xml.in.h:170 ../rules/sun.xml.in.h:48 +#: ../rules/base.xml.in.h:198 msgid "Dvorak" msgstr "Дровак" -#: ../rules/base.xml.in.h:171 -msgid "Dvorak, Polish quotes on key \"1/!\"" +#: ../rules/base.xml.in.h:199 +msgid "Dvorak (UK Punctuation)" msgstr "" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:200 +msgid "Dvorak international" +msgstr "" + +#: ../rules/base.xml.in.h:201 +msgid "Dvorak, Polish quotes on key 1" +msgstr "" + +#: ../rules/base.xml.in.h:202 msgid "Dvorak, Polish quotes on quotemark key" msgstr "" -#: ../rules/base.xml.in.h:173 -msgid "Eastern" +#: ../rules/base.xml.in.h:203 +msgid "E" msgstr "" -#: ../rules/base.xml.in.h:174 ../rules/sun.xml.in.h:49 +#: ../rules/base.xml.in.h:204 +msgid "Eastern" +msgstr "Чыгыш" + +#: ../rules/base.xml.in.h:205 msgid "Eliminate dead keys" msgstr "" -#: ../rules/base.xml.in.h:175 -msgid "Ennyah DKB-1008" +#: ../rules/base.xml.in.h:206 +msgid "Enable extra typographic characters" msgstr "" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:207 +msgid "English" +msgstr "ÐнглиÑ" + +#: ../rules/base.xml.in.h:208 +msgid "Ennyah DKB-1008" +msgstr "Ennyah DKB-1008" + +#: ../rules/base.xml.in.h:209 +#, fuzzy +msgid "Enter on keypad" +msgstr "Pro кошумча панели менен" + +#: ../rules/base.xml.in.h:210 msgid "Epo" -msgstr "" +msgstr "ÐÑп" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:211 msgid "Ergonomic" msgstr "" -#: ../rules/base.xml.in.h:178 ../rules/sun.xml.in.h:50 +#: ../rules/base.xml.in.h:212 msgid "Esp" -msgstr "" +msgstr "ИÑп" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:213 msgid "Esperanto" -msgstr "" +msgstr "ÐÑперанто" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:214 msgid "Est" -msgstr "" +msgstr "ÐÑÑ‚" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:215 msgid "Estonia" -msgstr "" +msgstr "ÐÑтониÑ" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:216 msgid "Eth" -msgstr "" +msgstr "Ðфп" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:217 msgid "Ethiopia" -msgstr "" +msgstr "ÐфиопиÑ" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:218 msgid "Evdev-managed keyboard" msgstr "" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:219 msgid "Everex STEPnote" -msgstr "" +msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:220 msgid "Ewe" -msgstr "" +msgstr "Ðве" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:221 msgid "Extended" msgstr "" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:222 +msgid "Extended - Winkeys" +msgstr "" + +#: ../rules/base.xml.in.h:223 msgid "Extended Backslash" msgstr "" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:224 msgid "F-letter (F) variant" msgstr "" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:225 +msgid "FL90" +msgstr "FL90" + +#: ../rules/base.xml.in.h:226 msgid "Fao" -msgstr "" +msgstr "Фар" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:227 msgid "Faroe Islands" -msgstr "" +msgstr "Фаро аралдары" -#: ../rules/base.xml.in.h:192 ../rules/sun.xml.in.h:51 +#: ../rules/base.xml.in.h:228 msgid "Fin" -msgstr "" +msgstr "Фин" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:229 msgid "Finland" -msgstr "" +msgstr "ФинлÑндиÑ" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:232 msgid "Four-level key with abstract separators" msgstr "" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:233 msgid "Four-level key with comma" msgstr "" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:234 msgid "Four-level key with dot" msgstr "" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:235 +msgid "Four-level key with dot, latin-9 restriction" +msgstr "" + +#: ../rules/base.xml.in.h:236 msgid "Four-level key with momayyez" msgstr "" -#: ../rules/base.xml.in.h:200 ../rules/sun.xml.in.h:53 +#: ../rules/base.xml.in.h:237 msgid "Fra" -msgstr "" +msgstr "Фра" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:238 msgid "France" -msgstr "" +msgstr "ФранциÑ" -#: ../rules/base.xml.in.h:202 ../rules/sun.xml.in.h:55 +#: ../rules/base.xml.in.h:239 msgid "French" -msgstr "" +msgstr "Француз" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:240 msgid "French (Macintosh)" -msgstr "" +msgstr "Француз (Macintosh)" -#: ../rules/base.xml.in.h:204 ../rules/sun.xml.in.h:56 +#: ../rules/base.xml.in.h:241 msgid "French (legacy)" msgstr "" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:242 msgid "French Dvorak" -msgstr "" +msgstr "Француз Dvorak" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:243 msgid "French, Sun dead keys" -msgstr "" +msgstr "Француз,атайын (dead keys) Sun клавишалары менен" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:244 msgid "French, eliminate dead keys" msgstr "" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:245 +msgid "Fujitsu-Siemens Computers AMILO laptop" +msgstr "Fujitsu-Siemens Computers AMILO laptop" + +#: ../rules/base.xml.in.h:246 msgid "Fula" -msgstr "" +msgstr "Фула" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:247 msgid "GBr" -msgstr "" +msgstr "Брит" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:248 msgid "Ga" -msgstr "" +msgstr "Га" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:249 msgid "Generic 101-key PC" -msgstr "" +msgstr "Жалпы 101-клавишалары менен PC" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:250 msgid "Generic 102-key (Intl) PC" -msgstr "" +msgstr "Жалпы 102-клавишалары менен (Инт.) PC" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:251 msgid "Generic 104-key PC" -msgstr "" +msgstr "Жалпы 104-клавишалары менен PC" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:252 msgid "Generic 105-key (Intl) PC" -msgstr "" +msgstr "Жалпы 105-клавишалары менен (Инт.) PC" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:253 msgid "Genius Comfy KB-12e" -msgstr "" +msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:254 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -msgstr "" +msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:255 msgid "Genius Comfy KB-21e-Scroll" -msgstr "" +msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:256 msgid "Genius KB-19e NB" -msgstr "" +msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:257 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:258 msgid "Geo" -msgstr "" +msgstr "Груз" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:259 msgid "Georgia" -msgstr "" +msgstr "ГрузиÑ" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:260 msgid "Georgian" -msgstr "" +msgstr "Грузиндик" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:261 +msgid "Georgian AZERTY Tskapo" +msgstr "Грузин AZERTY Tskapo" + +#: ../rules/base.xml.in.h:262 msgid "German (Macintosh)" -msgstr "" +msgstr "Ðемец (Macintosh)" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:263 msgid "German, Sun dead keys" -msgstr "" +msgstr "Ðемец, атайын (dead keys) Sun клавишалары менен" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:264 msgid "German, eliminate dead keys" msgstr "" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:265 msgid "Germany" -msgstr "" +msgstr "ГерманиÑ" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:266 msgid "Gha" -msgstr "" +msgstr "Ган" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:267 msgid "Ghana" -msgstr "" +msgstr "Гана" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:268 msgid "Gre" -msgstr "" +msgstr "Гре" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:269 msgid "Greece" +msgstr "ГрециÑ" + +#: ../rules/base.xml.in.h:270 +msgid "Group toggle on multiply/divide key" msgstr "" -#: ../rules/base.xml.in.h:230 +#: ../rules/base.xml.in.h:271 msgid "Gui" -msgstr "" +msgstr "Гви" -#: ../rules/base.xml.in.h:231 +#: ../rules/base.xml.in.h:272 msgid "Guinea" -msgstr "" +msgstr "ГвинеÑ" -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:273 msgid "Gujarati" -msgstr "" +msgstr "Гуджарати" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:274 msgid "Gurmukhi" +msgstr "Гурмукхи" + +#: ../rules/base.xml.in.h:275 +msgid "Gurmukhi Jhelum" msgstr "" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:276 msgid "Gyration" -msgstr "" +msgstr "Гирашн" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:277 msgid "Happy Hacking Keyboard" msgstr "" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:278 msgid "Happy Hacking Keyboard for Mac" msgstr "" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:279 msgid "Hausa" -msgstr "" +msgstr "Хауза" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:280 msgid "Hewlett-Packard Internet Keyboard" -msgstr "" +msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:281 msgid "Hewlett-Packard Omnibook 500 FA" -msgstr "" +msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:282 msgid "Hewlett-Packard Omnibook 5xx" -msgstr "" +msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Omnibook 6000/6100" -msgstr "" +msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook XE3 GC" -msgstr "" +msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook XE3 GF" -msgstr "" +msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook XT1000" -msgstr "" +msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Pavilion ZT11xx" +msgstr "Hewlett-Packard Pavilion ZT11xx" + +#: ../rules/base.xml.in.h:288 +msgid "Hewlett-Packard Pavilion dv5" +msgstr "Hewlett-Packard Pavilion dv5" + +#: ../rules/base.xml.in.h:289 +msgid "Hewlett-Packard SK-250x Multimedia Keyboard" +msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" + +#: ../rules/base.xml.in.h:290 +msgid "Hewlett-Packard nx9020" +msgstr "Hewlett-Packard nx9020" + +#: ../rules/base.xml.in.h:291 +msgid "Hexadecimal" msgstr "" -#: ../rules/base.xml.in.h:246 -msgid "Hewlett-Packard SK-2501 Multimedia Keyboard" +#: ../rules/base.xml.in.h:292 +msgid "Hindi Bolnagri" msgstr "" -#: ../rules/base.xml.in.h:247 -msgid "Hewlett-Packard SK-2505 Internet Keyboard" +#: ../rules/base.xml.in.h:293 +msgid "Hindi Wx" msgstr "" -#: ../rules/base.xml.in.h:248 -msgid "Hindi Bolnagri" +#: ../rules/base.xml.in.h:294 +msgid "Homophonic" msgstr "" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:295 msgid "Honeywell Euroboard" -msgstr "" +msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:296 msgid "Hrv" -msgstr "" +msgstr "Хорв" -#: ../rules/base.xml.in.h:251 ../rules/sun.xml.in.h:59 +#: ../rules/base.xml.in.h:297 msgid "Hun" -msgstr "" +msgstr "Венг" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:298 msgid "Hungary" -msgstr "" +msgstr "ВенгриÑ" -#: ../rules/base.xml.in.h:253 -msgid "Hyper is mapped to the Win-keys." +#: ../rules/base.xml.in.h:299 +msgid "Hyper is mapped to Win-keys" msgstr "" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:300 msgid "IBM (LST 1205-92)" -msgstr "" +msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:301 msgid "IBM Rapid Access" -msgstr "" +msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:302 msgid "IBM Rapid Access II" -msgstr "" +msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:257 -msgid "IBM Rapid Access II (alternate option)" -msgstr "" +#: ../rules/base.xml.in.h:303 +msgid "IBM Space Saver" +msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:304 msgid "IBM ThinkPad 560Z/600/600E/A22E" -msgstr "" +msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:305 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" -msgstr "" +msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" + +#: ../rules/base.xml.in.h:306 +msgid "IBM ThinkPad R60/T60/R61/T61" +msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:260 ../rules/sun.xml.in.h:61 +#: ../rules/base.xml.in.h:307 +msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" +msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" + +#: ../rules/base.xml.in.h:308 msgid "ISO Alternate" -msgstr "" +msgstr "Кошумча ISO" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:309 msgid "Iceland" -msgstr "" +msgstr "ИÑландиÑ" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:310 msgid "Igbo" +msgstr "Igbo" + +#: ../rules/base.xml.in.h:311 +msgid "Include dead tilde" msgstr "" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:312 msgid "Ind" -msgstr "" +msgstr "Инд" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:313 msgid "India" -msgstr "" +msgstr "ИндиÑ" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:314 msgid "International (AltGr dead keys)" msgstr "" -#: ../rules/base.xml.in.h:266 ../rules/sun.xml.in.h:62 +#: ../rules/base.xml.in.h:315 msgid "International (with dead keys)" msgstr "" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:316 msgid "Inuktitut" -msgstr "" +msgstr "ИннуитÑкаÑ" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:317 msgid "Iran" -msgstr "" +msgstr "Иран" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:318 msgid "Iraq" -msgstr "" +msgstr "Ирак" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:319 msgid "Ireland" -msgstr "" +msgstr "ИрландиÑ" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:320 msgid "Irl" -msgstr "" +msgstr "Ирл" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:321 msgid "Irn" -msgstr "" +msgstr "ФарÑ" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:322 msgid "Irq" -msgstr "" +msgstr "Ирк" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:323 msgid "Isl" -msgstr "" +msgstr "ИÑл" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:324 msgid "Isr" -msgstr "" +msgstr "Ивр" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:325 msgid "Israel" -msgstr "" +msgstr "Израиль" -#: ../rules/base.xml.in.h:277 ../rules/sun.xml.in.h:63 +#: ../rules/base.xml.in.h:326 msgid "Ita" -msgstr "" +msgstr "Ит" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:327 msgid "Italy" -msgstr "" +msgstr "ИталиÑ" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:328 msgid "Japan" -msgstr "" +msgstr "ЯпониÑ" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:329 msgid "Japan (PC-98xx Series)" -msgstr "" - -#: ../rules/base.xml.in.h:281 -msgid "Japanese 106-key" -msgstr "" +msgstr "Japan (PC-98xx Series)" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:330 msgid "Japanese keyboard options" msgstr "" -#: ../rules/base.xml.in.h:283 ../rules/sun.xml.in.h:66 +#: ../rules/base.xml.in.h:331 msgid "Jpn" -msgstr "" +msgstr "Яп" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:332 +msgid "Kalmyk" +msgstr "Калмык" + +#: ../rules/base.xml.in.h:333 msgid "Kana" -msgstr "" +msgstr "Кана" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:334 msgid "Kana Lock key is locking" msgstr "" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:335 msgid "Kannada" -msgstr "" +msgstr "Каннада" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:336 msgid "Kashubian" -msgstr "" +msgstr "Кашуб" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:337 msgid "Kaz" -msgstr "" +msgstr "Каз" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:338 msgid "Kazakh with Russian" -msgstr "" +msgstr "Казакча ОруÑча менен" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:339 msgid "Kazakhstan" -msgstr "" +msgstr "КазахÑтан" -#: ../rules/base.xml.in.h:291 -msgid "Keypad" +#: ../rules/base.xml.in.h:340 +msgid "Key sequence to kill the X server" msgstr "" -#: ../rules/base.xml.in.h:292 -msgid "Keypad with unicode additions (arrows and math operators)" -msgstr "" +#: ../rules/base.xml.in.h:341 +#, fuzzy +msgid "Key to choose 3rd level" +msgstr "3-чү денгÑÑлди тандоо Menu клавишанын баÑылышы менен." -#: ../rules/base.xml.in.h:293 -msgid "Keypad with unicode additions (arrows and math operators). Math operators on default level." +#: ../rules/base.xml.in.h:342 +#, fuzzy +msgid "Key(s) to change layout" +msgstr "Alt+Ctrl раÑкладканы алмаштырат." + +#: ../rules/base.xml.in.h:343 +msgid "Keypad" msgstr "" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:344 msgid "Keytronic FlexPro" -msgstr "" +msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:345 +msgid "Kgz" +msgstr "Кгз" + +#: ../rules/base.xml.in.h:346 msgid "Khm" +msgstr "Кхм" + +#: ../rules/base.xml.in.h:347 +msgid "Komi" msgstr "" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:348 msgid "Kor" -msgstr "" +msgstr "Кор" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:349 msgid "Korea, Republic of" -msgstr "" +msgstr "ÐšÐ¾Ñ€ÐµÑ Ð ÐµÑпубликаÑÑ‹" -#: ../rules/base.xml.in.h:298 -msgid "Korean 106-key" -msgstr "" - -#: ../rules/base.xml.in.h:299 -msgid "Kotoistus" +#: ../rules/base.xml.in.h:350 +msgid "Ktunaxa" msgstr "" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:351 msgid "Kurdish, (F)" -msgstr "" +msgstr "Курд, (F)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:352 msgid "Kurdish, Arabic-Latin" -msgstr "" +msgstr "Курд, араб-латын" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, Latin Alt-Q" -msgstr "" +msgstr "Курд, латын Alt-Q" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Latin Q" -msgstr "" +msgstr "Курд, латын Q" -#: ../rules/base.xml.in.h:304 -msgid "Kyr" -msgstr "" - -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:355 msgid "Kyrgyzstan" -msgstr "" +msgstr "КыргызÑтан" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:356 msgid "LAm" +msgstr "ЛатÐм" + +#: ../rules/base.xml.in.h:357 +msgid "LEKP" msgstr "" -#: ../rules/base.xml.in.h:307 -msgid "LCtrl+LShift change layout." +#: ../rules/base.xml.in.h:358 +msgid "LEKPa" msgstr "" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:359 msgid "Lao" -msgstr "" +msgstr "Лао" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:360 msgid "Laos" -msgstr "" +msgstr "ЛаоÑ" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:361 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:362 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook eMachines m68xx" msgstr "" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:364 msgid "Latin" -msgstr "" +msgstr "Латын" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:365 msgid "Latin American" -msgstr "" +msgstr "Латын американдык" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:366 msgid "Latin Unicode" -msgstr "" +msgstr "Латын Unicode" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:367 msgid "Latin Unicode qwerty" -msgstr "" +msgstr "Латын Unicode qwerty" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:368 msgid "Latin qwerty" -msgstr "" +msgstr "Латын qwerty" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:369 +msgid "Latin unicode" +msgstr "Латын unicode" + +#: ../rules/base.xml.in.h:370 +msgid "Latin unicode qwerty" +msgstr "Латын unicode qwerty" + +#: ../rules/base.xml.in.h:371 msgid "Latin with guillemets" msgstr "" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:372 msgid "Latvia" -msgstr "" +msgstr "ЛатвиÑ" -#: ../rules/base.xml.in.h:320 -msgid "Layout switching" -msgstr "" +#: ../rules/base.xml.in.h:373 +msgid "Lav" +msgstr "Лат" -#: ../rules/base.xml.in.h:321 -msgid "Left Alt is swapped with left Win-key." -msgstr "" +#: ../rules/base.xml.in.h:374 +msgid "Left Alt" +msgstr "Сол Alt" -#: ../rules/base.xml.in.h:322 -msgid "Left Alt key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:375 +msgid "Left Alt (while pressed)" +msgstr "Сол Alt клавишаÑÑ‹ (баÑылган учурда)" -#: ../rules/base.xml.in.h:323 -msgid "Left Alt key switches layout while pressed." +#: ../rules/base.xml.in.h:376 +msgid "Left Alt is swapped with Left Win" msgstr "" -#: ../rules/base.xml.in.h:324 -msgid "Left Ctrl key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:377 +msgid "Left Ctrl" +msgstr "Сол Ctrl" -#: ../rules/base.xml.in.h:325 -msgid "Left Shift key changes layout." +#: ../rules/base.xml.in.h:378 +msgid "Left Ctrl+Left Shift" msgstr "" -#: ../rules/base.xml.in.h:326 -msgid "Left Win-key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:379 +msgid "Left Shift" +msgstr "Сол Shift" -#: ../rules/base.xml.in.h:327 -msgid "Left Win-key is Compose." -msgstr "" +#: ../rules/base.xml.in.h:380 +msgid "Left Win" +msgstr "Сол Win" -#: ../rules/base.xml.in.h:328 -msgid "Left Win-key switches layout while pressed." +#: ../rules/base.xml.in.h:381 +msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:382 +msgid "Left Win (while pressed)" +msgstr "Сол Alt клавишаÑÑ‹ (баÑылган учурда)" + +#: ../rules/base.xml.in.h:383 msgid "Left hand" msgstr "" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:384 msgid "Left handed Dvorak" msgstr "" -#: ../rules/base.xml.in.h:331 -msgid "Legacy Wang 724 keypad" +#: ../rules/base.xml.in.h:385 +msgid "Legacy" +msgstr "" + +#: ../rules/base.xml.in.h:386 +msgid "Legacy Wang 724" msgstr "" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:388 msgid "Legacy key with comma" msgstr "" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:389 msgid "Legacy key with dot" msgstr "" -#: ../rules/base.xml.in.h:335 -msgid "Legacy keypad" +#: ../rules/base.xml.in.h:390 +msgid "Less-than/Greater-than" msgstr "" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:391 msgid "Lithuania" -msgstr "" +msgstr "Литва" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:392 msgid "Logitech Access Keyboard" -msgstr "" +msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:393 msgid "Logitech Cordless Desktop" -msgstr "" +msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:394 msgid "Logitech Cordless Desktop (alternate option)" -msgstr "" +msgstr "Logitech Cordless Desktop (альтернативдик вариант)" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop EX110" -msgstr "" +msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop LX-300" -msgstr "" +msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop Navigator" -msgstr "" +msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:343 -msgid "Logitech Cordless Desktop Pro (alternate option2)" -msgstr "" +#: ../rules/base.xml.in.h:398 +msgid "Logitech Cordless Desktop Optical" +msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:399 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" +msgstr "Logitech Cordless Desktop Pro (альтернативдик вариант 2)" + +#: ../rules/base.xml.in.h:400 +msgid "Logitech Cordless Desktop iTouch" +msgstr "Logitech Cordless Desktop iTouch" + +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Freedom/Desktop Navigator" -msgstr "" +msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:402 msgid "Logitech G15 extra keys via G15daemon" -msgstr "" +msgstr "Logitech G15 extra keys via G15daemon" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:403 +msgid "Logitech Generic Keyboard" +msgstr "Logitech Generic Keyboard" + +#: ../rules/base.xml.in.h:404 +msgid "Logitech Internet 350 Keyboard" +msgstr "Logitech Internet 350 Keyboard" + +#: ../rules/base.xml.in.h:405 msgid "Logitech Internet Keyboard" -msgstr "" +msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet Navigator Keyboard" -msgstr "" +msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:407 +msgid "Logitech Media Elite Keyboard" +msgstr "Logitech Media Elite Keyboard" + +#: ../rules/base.xml.in.h:408 +msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" +msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" + +#: ../rules/base.xml.in.h:409 msgid "Logitech Ultra-X Keyboard" -msgstr "" +msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:410 +msgid "Logitech diNovo Edge Keyboard" +msgstr "Logitech diNovo Edge Keyboard" + +#: ../rules/base.xml.in.h:411 msgid "Logitech diNovo Keyboard" -msgstr "" +msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:412 msgid "Logitech iTouch" -msgstr "" +msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:413 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" -msgstr "" +msgstr "Logitech iTouch Cordless Keyboard (Y-RB6 модели)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch Internet Navigator Keyboard SE" -msgstr "" +msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" -msgstr "" +msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:354 -msgid "Ltu" +#: ../rules/base.xml.in.h:416 +msgid "Lower Sorbian" msgstr "" -#: ../rules/base.xml.in.h:355 -msgid "Lva" +#: ../rules/base.xml.in.h:417 +msgid "Lower Sorbian (qwertz)" msgstr "" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:418 +msgid "Ltu" +msgstr "Лит" + +#: ../rules/base.xml.in.h:419 msgid "MESS" msgstr "" -#: ../rules/base.xml.in.h:357 -msgid "MacBook/MacBook Pro" +#: ../rules/base.xml.in.h:420 +msgid "MNE" msgstr "" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:421 +msgid "MacBook/MacBook Pro" +msgstr "MacBook/MacBook Pro" + +#: ../rules/base.xml.in.h:422 msgid "MacBook/MacBook Pro (Intl)" -msgstr "" +msgstr "MacBook/MacBook Pro (Инт.)" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:423 msgid "Macedonia" -msgstr "" +msgstr "МакедониÑ" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:424 msgid "Macintosh" -msgstr "" +msgstr "Macintosh" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:425 msgid "Macintosh Old" -msgstr "" +msgstr "ÐÑки Macintosh" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:426 msgid "Macintosh, Sun dead keys" -msgstr "" +msgstr "Macintosh, атайын (dead keys) Sun клавишалары менен" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:427 msgid "Macintosh, eliminate dead keys" msgstr "" -#: ../rules/base.xml.in.h:364 -msgid "Make CapsLock an additional Ctrl." -msgstr "" +#: ../rules/base.xml.in.h:428 +msgid "Make CapsLock an additional Backspace" +msgstr "CapsLock кошумча Боштук клавиша катары колдонуу" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:429 +msgid "Make CapsLock an additional Ctrl" +msgstr "CapsLock кошумча Ctrl клавиша катары колдонуу" + +#: ../rules/base.xml.in.h:430 +msgid "Make CapsLock an additional ESC" +msgstr "CapsLock кошумча ESC клавиша катары колдонуу" + +#: ../rules/base.xml.in.h:431 msgid "Mal" -msgstr "" +msgstr "Мал" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:432 msgid "Malayalam" +msgstr "Малайaлам" + +#: ../rules/base.xml.in.h:433 +msgid "Malayalam Lalitha" msgstr "" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:434 msgid "Maldives" -msgstr "" +msgstr "Мальдивалар" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:435 msgid "Malta" -msgstr "" +msgstr "Мальта" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:436 msgid "Maltese keyboard with US layout" msgstr "" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:437 msgid "Mao" -msgstr "" +msgstr "Мао" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:438 msgid "Maori" -msgstr "" +msgstr "Маори" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:439 msgid "Memorex MX1998" -msgstr "" +msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:440 msgid "Memorex MX2500 EZ-Access Keyboard" -msgstr "" +msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:441 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:375 -msgid "Menu is Compose." +#: ../rules/base.xml.in.h:442 +msgid "Menu" msgstr "" -#: ../rules/base.xml.in.h:376 -msgid "Menu key changes layout." +#: ../rules/base.xml.in.h:443 +msgid "Meta is mapped to Left Win" msgstr "" -#: ../rules/base.xml.in.h:377 -msgid "Meta is mapped to the Win-keys." +#: ../rules/base.xml.in.h:444 +msgid "Meta is mapped to Win keys" msgstr "" -#: ../rules/base.xml.in.h:378 -msgid "Meta is mapped to the left Win-key." -msgstr "" +#: ../rules/base.xml.in.h:445 +msgid "Microsoft Comfort Curve Keyboard 2000" +msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:446 msgid "Microsoft Internet Keyboard" -msgstr "" +msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:447 msgid "Microsoft Internet Keyboard Pro, Swedish" -msgstr "" +msgstr "Microsoft Internet Keyboard Pro, швед" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:448 msgid "Microsoft Natural" -msgstr "" +msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:449 +msgid "Microsoft Natural Keyboard Elite" +msgstr "Microsoft Natural Keyboard Elite" + +#: ../rules/base.xml.in.h:450 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -msgstr "" +msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Natural Keyboard Pro OEM" -msgstr "" +msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -msgstr "" +msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:453 +msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" +msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" + +#: ../rules/base.xml.in.h:454 msgid "Microsoft Office Keyboard" -msgstr "" +msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" -msgstr "" +msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:387 ../rules/sun.xml.in.h:72 +#: ../rules/base.xml.in.h:456 msgid "Miscellaneous compatibility options" msgstr "" -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:457 msgid "Mkd" -msgstr "" +msgstr "Мак" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:458 msgid "Mlt" -msgstr "" +msgstr "Мальт" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:459 msgid "Mmr" -msgstr "" +msgstr "МьÑнм" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:460 msgid "Mng" -msgstr "" +msgstr "Монг" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:461 msgid "Mongolia" -msgstr "" +msgstr "МонголиÑ" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:462 +msgid "Montenegro" +msgstr "ЧерногориÑ" + +#: ../rules/base.xml.in.h:463 msgid "Morocco" -msgstr "" +msgstr "Морокко" -#: ../rules/base.xml.in.h:394 ../rules/sun.xml.in.h:73 +#: ../rules/base.xml.in.h:464 msgid "Multilingual" -msgstr "" +msgstr "Көп тилдүү" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:465 msgid "Multilingual, first part" -msgstr "" +msgstr "Көп тилдүү, биринчи бөлүк" -#: ../rules/base.xml.in.h:396 ../rules/sun.xml.in.h:74 +#: ../rules/base.xml.in.h:466 msgid "Multilingual, second part" -msgstr "" +msgstr "Көп тилдүү, Ñкинчи бөлүк" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:467 msgid "Myanmar" -msgstr "" +msgstr "МьÑнмар" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:468 msgid "NICOLA-F style Backspace" msgstr "" -#: ../rules/base.xml.in.h:399 -msgid "Neostyle" +#: ../rules/base.xml.in.h:469 +msgid "NLA" msgstr "" -#: ../rules/base.xml.in.h:400 -msgid "Nep" +#: ../rules/base.xml.in.h:470 +msgid "Nativo" msgstr "" -#: ../rules/base.xml.in.h:401 -msgid "Nepal" +#: ../rules/base.xml.in.h:471 +msgid "Nativo for Esperanto" msgstr "" -#: ../rules/base.xml.in.h:402 -msgid "Netherlands" +#: ../rules/base.xml.in.h:472 +msgid "Nativo for USA keyboards" msgstr "" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:473 +msgid "Neo 2" +msgstr "Neo 2" + +#: ../rules/base.xml.in.h:474 +msgid "Nep" +msgstr "Ðеп" + +#: ../rules/base.xml.in.h:475 +msgid "Nepal" +msgstr "Ðепал" + +#: ../rules/base.xml.in.h:476 +msgid "Netherlands" +msgstr "ÐидерландиÑ" + +#: ../rules/base.xml.in.h:477 msgid "Nig" -msgstr "" +msgstr "Ðгр" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:478 msgid "Nigeria" -msgstr "" +msgstr "ÐигериÑ" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:479 msgid "Nld" +msgstr "Флам" + +#: ../rules/base.xml.in.h:480 +msgid "Non-breakable space character at fourth level" msgstr "" -#: ../rules/base.xml.in.h:406 ../rules/sun.xml.in.h:75 -msgid "Nor" +#: ../rules/base.xml.in.h:481 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "" -#: ../rules/base.xml.in.h:407 -msgid "Northern Saami" +#: ../rules/base.xml.in.h:482 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:483 +msgid "Non-breakable space character at second level" +msgstr "" + +#: ../rules/base.xml.in.h:484 +msgid "Non-breakable space character at third level" +msgstr "" + +#: ../rules/base.xml.in.h:485 +msgid "Non-breakable space character at third level, nothing at fourth level" +msgstr "" + +#: ../rules/base.xml.in.h:486 +msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" +msgstr "" + +#: ../rules/base.xml.in.h:487 +msgid "Nor" +msgstr "Ðор" + +#: ../rules/base.xml.in.h:488 +msgid "Northern Saami" +msgstr "Түндүк Саами" + +#: ../rules/base.xml.in.h:489 msgid "Northern Saami, eliminate dead keys" msgstr "" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:490 msgid "Northgate OmniKey 101" -msgstr "" +msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:491 msgid "Norway" -msgstr "" +msgstr "ÐорвегиÑ" -#: ../rules/base.xml.in.h:411 -msgid "NumLock LED shows alternative layout." +#: ../rules/base.xml.in.h:492 +msgid "NumLock" msgstr "" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:493 msgid "Numeric keypad delete key behaviour" msgstr "" -#: ../rules/base.xml.in.h:413 -msgid "Numeric keypad keys work as with Mac." +#: ../rules/base.xml.in.h:494 +msgid "Numeric keypad keys work as with Mac" msgstr "" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:495 msgid "Numeric keypad layout selection" msgstr "" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:496 msgid "OADG 109A" +msgstr "OADG 109A" + +#: ../rules/base.xml.in.h:497 +msgid "OLPC" msgstr "" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:498 +msgid "OLPC Dari" +msgstr "" + +#: ../rules/base.xml.in.h:499 +#, fuzzy +msgid "OLPC Pashto" +msgstr "Пуштундук" + +#: ../rules/base.xml.in.h:500 +msgid "OLPC Southern Uzbek" +msgstr "" + +#: ../rules/base.xml.in.h:501 +msgid "Occitan" +msgstr "" + +#: ../rules/base.xml.in.h:502 msgid "Ogham" msgstr "" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:503 msgid "Ogham IS434" -msgstr "" +msgstr "Огхам IS434" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:504 msgid "Oriya" -msgstr "" +msgstr "ОрийÑ" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:505 msgid "Ortek MCK-800 MM/Internet keyboard" -msgstr "" +msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:506 msgid "Ossetian" msgstr "ОÑетиндик" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:507 msgid "Ossetian, Winkeys" msgstr "ОÑетиндик Windows клавиатураÑÑ‹" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:508 +#, fuzzy +msgid "Ossetian, legacy" +msgstr "ОÑетиндик Windows клавиатураÑÑ‹" + +#: ../rules/base.xml.in.h:509 msgid "PC-98xx Series" msgstr "PC-98xx" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:510 msgid "Pak" msgstr "Пак" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:511 msgid "Pakistan" msgstr "ПакиÑтан" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:512 msgid "Pashto" msgstr "Пуштундук" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:513 msgid "Pattachote" msgstr "Паттачот" -#: ../rules/base.xml.in.h:427 ../rules/sun.xml.in.h:78 +#: ../rules/base.xml.in.h:514 msgid "Phonetic" msgstr "Фонетикалык" -#: ../rules/base.xml.in.h:428 ../rules/sun.xml.in.h:79 +#: ../rules/base.xml.in.h:515 +#, fuzzy +msgid "Phonetic Winkeys" +msgstr "ОÑетиндик Windows клавиатураÑÑ‹" + +#: ../rules/base.xml.in.h:516 msgid "Pol" msgstr "ПольÑк" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:517 msgid "Poland" msgstr "Польша" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:518 msgid "Polytonic" msgstr "Полифоникалык" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:519 msgid "Portugal" msgstr "ПортугалиÑ" -#: ../rules/base.xml.in.h:432 -msgid "Press Left Alt key to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:433 -msgid "Press Left Win-key to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо Ñол Win клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:434 -msgid "Press Menu key to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо Menu клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:435 -msgid "Press Right Alt key to choose 3rd level, Shift+Right Alt key is Multi_Key." -msgstr "" - -#: ../rules/base.xml.in.h:436 -msgid "Press Right Alt key to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо оң Alt клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:437 -msgid "Press Right Ctrl to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо оң Ctrl клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:438 -msgid "Press Right Win-key to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо оң Win клавишанын баÑылышы менен." - -#: ../rules/base.xml.in.h:439 -msgid "Press any of Alt keys to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо Alt клавишалардын бирөөÑүнүн баÑылышы менен." - -#: ../rules/base.xml.in.h:440 -msgid "Press any of Win-keys to choose 3rd level." -msgstr "3-чү денгÑÑлди тандоо Win клавишалардын бирөөÑүнүн баÑылышы менен." - -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:520 msgid "Pro" msgstr "Pro" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:521 msgid "Pro Keypad" msgstr "Pro кошумча панели менен" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:522 msgid "Probhat" msgstr "Пробат" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:523 +msgid "Programmer Dvorak" +msgstr "" + +#: ../rules/base.xml.in.h:524 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:445 ../rules/sun.xml.in.h:88 +#: ../rules/base.xml.in.h:525 msgid "Prt" msgstr "Порт" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:526 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:447 -msgid "R-Alt switches layout while pressed." -msgstr "" - -#: ../rules/base.xml.in.h:448 -msgid "Right Alt is Compose." -msgstr "" - -#: ../rules/base.xml.in.h:449 -msgid "Right Alt key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:527 +msgid "Right Alt" +msgstr "Оң Alt" -#: ../rules/base.xml.in.h:450 ../rules/sun.xml.in.h:90 -msgid "Right Alt key never chooses 3rd level." -msgstr "" +#: ../rules/base.xml.in.h:528 +#, fuzzy +msgid "Right Alt (while pressed)" +msgstr "Оң Alt клавишаÑÑ‹ баÑылганда убактылуу группаны алмаштырат" -#: ../rules/base.xml.in.h:451 -msgid "Right Ctrl is Compose." -msgstr "Оң Ctrl Compose клавишадай." +#: ../rules/base.xml.in.h:529 +#, fuzzy +msgid "Right Alt key never chooses 3rd level" +msgstr "3-чү денгÑÑлди тандоо оң Alt клавишанын баÑылышы менен." -#: ../rules/base.xml.in.h:452 -msgid "Right Ctrl key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:530 +#, fuzzy +msgid "Right Alt, Shift+Right Alt key is Multi_Key" +msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен.Shift жана оң Alt бирге Multi_Key катары амал жаÑайт" -#: ../rules/base.xml.in.h:453 -msgid "Right Ctrl key switches layout while pressed." -msgstr "" +#: ../rules/base.xml.in.h:531 +msgid "Right Ctrl" +msgstr "Оң Ctrl" -#: ../rules/base.xml.in.h:454 -msgid "Right Ctrl key works as Right Alt." -msgstr "Оң Ctrl оң Alt клавишадай амал жаÑайт." +#: ../rules/base.xml.in.h:532 +msgid "Right Ctrl (while pressed)" +msgstr "Оң Alt клавишаÑÑ‹ (баÑылган учурда)" -#: ../rules/base.xml.in.h:455 -msgid "Right Shift key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:533 +msgid "Right Ctrl as Right Alt" +msgstr "Оң Ctrl оң Alt клавишадай амал жаÑайт" -#: ../rules/base.xml.in.h:456 -msgid "Right Win-key changes layout." -msgstr "" +#: ../rules/base.xml.in.h:534 +msgid "Right Shift" +msgstr "Оң Shift" -#: ../rules/base.xml.in.h:457 -msgid "Right Win-key is Compose." -msgstr "Оң Win Compose клавишадай." +#: ../rules/base.xml.in.h:535 +msgid "Right Win" +msgstr "Оң Win" -#: ../rules/base.xml.in.h:458 -msgid "Right Win-key switches layout while pressed." -msgstr "" +#: ../rules/base.xml.in.h:536 +msgid "Right Win (while pressed)" +msgstr "Оң Win клавишаÑÑ‹ (баÑылган учурда)" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:537 msgid "Right hand" msgstr "" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:538 msgid "Right handed Dvorak" msgstr "Dvorak оң колдуу адамдар үчүн" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:539 msgid "Romania" msgstr "РумыниÑ" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:540 msgid "Romanian keyboard with German letters" msgstr "Румындык клавиатура немец ариптери менен" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:541 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Румындык клавиатура немец ариптери менен, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:542 msgid "Rou" msgstr "Рум" -#: ../rules/base.xml.in.h:465 ../rules/sun.xml.in.h:95 +#: ../rules/base.xml.in.h:543 msgid "Rus" msgstr "РуÑ" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:544 msgid "Russia" msgstr "РоÑÑиÑ" -#: ../rules/base.xml.in.h:467 ../rules/sun.xml.in.h:96 +#: ../rules/base.xml.in.h:545 msgid "Russian" msgstr "ОруÑча" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:546 msgid "Russian phonetic" msgstr "ОруÑча фонетикалык" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:547 +msgid "Russian phonetic Dvorak" +msgstr "ОруÑча фонетикалык Dvorak" + +#: ../rules/base.xml.in.h:548 msgid "Russian phonetic, eliminate dead keys" msgstr "ОруÑча фонетикалык, атайын (dead keys) клавишаларÑыз" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:549 msgid "Russian with Kazakh" msgstr "ОруÑча Казакча менен" -#: ../rules/base.xml.in.h:471 -msgid "SCG" -msgstr "СМÐ" - -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:550 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:551 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:552 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:553 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:554 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:555 +msgid "SRB" +msgstr "" + +#: ../rules/base.xml.in.h:556 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:557 +msgid "SVEN Slim 303" +msgstr "SVEN Slim 303" + +#: ../rules/base.xml.in.h:558 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:559 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:480 -msgid "ScrollLock LED shows alternative layout." -msgstr "" - -#: ../rules/base.xml.in.h:481 -msgid "Serbia and Montenegro" -msgstr "Ð¡ÐµÑ€Ð±Ð¸Ñ Ð¶Ð°Ð½Ð° ЧерногориÑ" +#: ../rules/base.xml.in.h:560 +msgid "Scroll Lock" +msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:482 -msgid "Shift with numeric keypad keys works as in MS Windows." +#: ../rules/base.xml.in.h:561 +msgid "ScrollLock" msgstr "" -#: ../rules/base.xml.in.h:483 -msgid "Shift+CapsLock changes layout." +#: ../rules/base.xml.in.h:562 +msgid "Secwepemctsin" msgstr "" -#: ../rules/base.xml.in.h:484 -msgid "Slovakia" -msgstr "СловакиÑ" +#: ../rules/base.xml.in.h:563 +msgid "Semi-colon on third level" +msgstr "" -#: ../rules/base.xml.in.h:485 -msgid "Slovenia" -msgstr "СловениÑ" +#: ../rules/base.xml.in.h:564 +msgid "Serbia" +msgstr "СербиÑ" -#: ../rules/base.xml.in.h:486 -msgid "South Africa" -msgstr "Түштүк Ðфрика" +#: ../rules/base.xml.in.h:565 +#, fuzzy +msgid "Shift cancels CapsLock" +msgstr "Ctrl жана CapsLock клавишаларды алмаштыруу." -#: ../rules/base.xml.in.h:487 -msgid "Southern Uzbek" +#: ../rules/base.xml.in.h:566 +msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "" -#: ../rules/base.xml.in.h:488 -msgid "Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level" -msgstr "" +#: ../rules/base.xml.in.h:567 +#, fuzzy +msgid "Shift with numeric keypad keys works as in MS Windows" +msgstr "Shift клавишаÑÑ‹ Ñандык клавиатурада MS Windows'тогу клавишадай амал жаÑайт" -#: ../rules/base.xml.in.h:489 -msgid "Space key outputs non-breakable space character at fourth level." -msgstr "" +#: ../rules/base.xml.in.h:568 +msgid "Shift+CapsLock" +msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:490 -msgid "Space key outputs non-breakable space character at second level." +#: ../rules/base.xml.in.h:569 +msgid "Simple" msgstr "" -#: ../rules/base.xml.in.h:491 -msgid "Space key outputs non-breakable space character at third level, nothing at fourth level." -msgstr "" +#: ../rules/base.xml.in.h:570 +msgid "Slovakia" +msgstr "СловакиÑ" -#: ../rules/base.xml.in.h:492 -msgid "Space key outputs non-breakable space character at third level, thin non-breakable space character at fourth level" -msgstr "" +#: ../rules/base.xml.in.h:571 +msgid "Slovenia" +msgstr "СловениÑ" -#: ../rules/base.xml.in.h:493 -msgid "Space key outputs non-breakable space character at third level." -msgstr "" +#: ../rules/base.xml.in.h:572 +msgid "South Africa" +msgstr "Түштүк Ðфрика" -#: ../rules/base.xml.in.h:494 -msgid "Space key outputs usual space at any level." -msgstr "" +#: ../rules/base.xml.in.h:573 +msgid "Southern Uzbek" +msgstr "Түштүк өзбөкчө" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:574 msgid "Spain" msgstr "ИÑпаниÑ" -#: ../rules/base.xml.in.h:496 ../rules/sun.xml.in.h:103 -msgid "Special keys (Ctrl+Alt+<key>) handled in a server." +#: ../rules/base.xml.in.h:575 +#, fuzzy +msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Ðтайын клавишалар (Ctrl+Alt+<клв>) Ñервер менен долборлонот." -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:576 msgid "SrL" msgstr "ШрЛ" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:577 msgid "Sri Lanka" msgstr "Шри Ланка" -#: ../rules/base.xml.in.h:499 ../rules/sun.xml.in.h:104 +#: ../rules/base.xml.in.h:578 msgid "Standard" msgstr "Стандарттык" -#: ../rules/base.xml.in.h:500 -msgid "Standard (Commabelow)" -msgstr "" +#: ../rules/base.xml.in.h:579 +#, fuzzy +msgid "Standard (Cedilla)" +msgstr "Стандарттык" + +#: ../rules/base.xml.in.h:580 +#, fuzzy +msgid "Standard Phonetic" +msgstr "Ðльтернативдүү фонетикалык" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:582 msgid "Standard RSTU" msgstr "Стандарттык RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:584 msgid "Standard RSTU on Russian layout" msgstr "Стандарттык RSTU, оруÑча" -#: ../rules/base.xml.in.h:505 ../rules/sun.xml.in.h:112 +#: ../rules/base.xml.in.h:585 +msgid "Sun Type 5/6" +msgstr "Sun Type 5/6" + +#: ../rules/base.xml.in.h:586 msgid "Sun dead keys" msgstr "Ðтайын (dead keys) Sun клавишалар" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:587 msgid "Super Power Multimedia Keyboard" -msgstr "" +msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:507 -msgid "Super is mapped to the Win-keys." -msgstr "" - -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:588 msgid "Svdvorak" msgstr "" -#: ../rules/base.xml.in.h:509 ../rules/sun.xml.in.h:113 +#: ../rules/base.xml.in.h:589 msgid "Svk" msgstr "Слов" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:590 msgid "Svn" msgstr "Cловен" -#: ../rules/base.xml.in.h:511 -msgid "Swap Ctrl and CapsLock." -msgstr "Ctrl жана CapsLock клавишаларды алмаштыруу." +#: ../rules/base.xml.in.h:591 +msgid "Swap Ctrl and CapsLock" +msgstr "Ctrl жана CapsLock клавишаларды алмаштыруу" -#: ../rules/base.xml.in.h:512 -msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -msgstr "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." +#: ../rules/base.xml.in.h:592 +msgid "Swap ESC and CapsLock" +msgstr "ESC жана CapsLock клавишаларды алмаштыруу" -#: ../rules/base.xml.in.h:513 ../rules/sun.xml.in.h:115 +#: ../rules/base.xml.in.h:593 msgid "Swe" msgstr "Швед" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:594 msgid "Sweden" msgstr "ШвециÑ" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:595 msgid "Switzerland" msgstr "ШвейцариÑ" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:596 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (чөнтөк ПК)" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:597 msgid "Syr" msgstr "ÐÑÑ" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:598 msgid "Syria" msgstr "Сирийдик" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:599 msgid "Syriac" msgstr "Сирийдик" -#: ../rules/base.xml.in.h:520 +#: ../rules/base.xml.in.h:600 msgid "Syriac phonetic" msgstr "Сирийдик фонетикалык" -#: ../rules/base.xml.in.h:521 +#: ../rules/base.xml.in.h:601 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:602 msgid "Tajikistan" msgstr "ТаджикиÑтан" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:603 msgid "Tamil" msgstr "Тамильдик" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:604 msgid "Tamil TAB Typewriter" msgstr "Тамильдик \"БаÑма машинаÑÑ‹\" TAB" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:605 msgid "Tamil TSCII Typewriter" -msgstr "" +msgstr "Тамиль TSCII печать машинаÑÑ‹" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:606 msgid "Tamil Unicode" -msgstr "" +msgstr "Тамиль Unicode" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:607 +msgid "Targa Visionary 811" +msgstr "Targa Visionary 811" + +#: ../rules/base.xml.in.h:608 msgid "Tatar" -msgstr "" +msgstr "Татар" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:609 msgid "Telugu" -msgstr "" +msgstr "Телугу" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:610 msgid "Tha" -msgstr "" +msgstr "Тай" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:611 msgid "Thailand" -msgstr "" - -#: ../rules/base.xml.in.h:531 ../rules/sun.xml.in.h:119 -msgid "Third level choosers" -msgstr "" +msgstr "Тайланд" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:612 msgid "Tibetan" -msgstr "" +msgstr "Тибет" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:613 msgid "Tibetan (with ASCII numerals)" -msgstr "" +msgstr "Тибет (ASCII номерлери менен)" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:614 msgid "Tifinagh" msgstr "" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:615 msgid "Tifinagh Alternative" msgstr "" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:616 msgid "Tifinagh Alternative Phonetic" msgstr "" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:617 msgid "Tifinagh Extended" msgstr "" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh Extended Phonetic" msgstr "" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Phonetic" msgstr "" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:620 msgid "Tilde (~) variant" msgstr "Тильда (~) менен вариант" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:621 msgid "Tjk" msgstr "Тадж" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:622 +msgid "To the corresponding key in a Dvorak keyboard." +msgstr "" + +#: ../rules/base.xml.in.h:623 +msgid "To the corresponding key in a Qwerty keyboard." +msgstr "" + +#: ../rules/base.xml.in.h:624 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:625 +#, fuzzy +msgid "Traditional Phonetic" +msgstr "Ðльтернативдүү фонетикалык" + +#: ../rules/base.xml.in.h:626 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:627 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:628 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:545 ../rules/sun.xml.in.h:120 +#: ../rules/base.xml.in.h:629 msgid "Tur" msgstr "Тур" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:630 msgid "Turkey" msgstr "ТурциÑ" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:631 +msgid "Turkmenistan" +msgstr "ТүркмениÑтан" + +#: ../rules/base.xml.in.h:632 msgid "Typewriter" msgstr "БаÑма машинаÑÑ‹" -#: ../rules/base.xml.in.h:548 ../rules/sun.xml.in.h:124 -msgid "U.S. English" -msgstr "ÐÐ½Ð³Ð»Ð¸Ñ (ÐКШ)" +#: ../rules/base.xml.in.h:633 +msgid "UCW layout (accented letters only)" +msgstr "" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:634 msgid "US keyboard with Bosnian digraphs" msgstr "ÐКШ клавиатураÑÑ‹ боÑнийдик диграфтар менен" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:635 msgid "US keyboard with Bosnian letters" msgstr "ÐКШ клавиатураÑÑ‹ боÑнийдик ариптер менен" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:636 msgid "US keyboard with Croatian digraphs" msgstr "ÐКШ клавиатураÑÑ‹ хорваттык диграфтар менен" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:637 msgid "US keyboard with Croatian letters" msgstr "ÐКШ клавиатураÑÑ‹ хорваттык ариптер менен" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:638 +#, fuzzy +msgid "US keyboard with Estonian letters" +msgstr "ÐКШ клавиатураÑÑ‹ боÑнийдик ариптер менен" + +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Lithuanian letters" msgstr "ÐКШ клавиатураÑÑ‹ литовдук ариптер менен" -#: ../rules/base.xml.in.h:554 -msgid "US keyboard with Slovenian digraphs" -msgstr "ÐКШ клавиатураÑÑ‹ Ñловендик диграфтар менен" - -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Slovenian letters" msgstr "ÐКШ клавиатураÑÑ‹ Ñловендик ариптер менен" -#: ../rules/base.xml.in.h:556 ../rules/sun.xml.in.h:126 +#: ../rules/base.xml.in.h:641 msgid "USA" msgstr "ÐКШ" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:642 msgid "Udmurt" msgstr "" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:643 msgid "Ukr" msgstr "Укр" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:644 msgid "Ukraine" msgstr "Украина" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:645 +msgid "Unicode additions (arrows and math operators)" +msgstr "" + +#: ../rules/base.xml.in.h:646 +msgid "Unicode additions (arrows and math operators). Math operators on default level" +msgstr "" + +#: ../rules/base.xml.in.h:647 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:561 ../rules/sun.xml.in.h:127 +#: ../rules/base.xml.in.h:648 msgid "United Kingdom" msgstr "ÐÐ½Ð³Ð»Ð¸Ñ (Улуу БританиÑ)" -#: ../rules/base.xml.in.h:562 -msgid "Urdu" -msgstr "Урду" +#: ../rules/base.xml.in.h:649 +msgid "Unitek KB-1925" +msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:650 +msgid "Urdu, Alternative phonetic" +msgstr "Урду, альтернативдик фонетикалык" + +#: ../rules/base.xml.in.h:651 +msgid "Urdu, Phonetic" +msgstr "Урду, фонетикалык" + +#: ../rules/base.xml.in.h:652 +msgid "Urdu, Winkeys" +msgstr "Урду, Windows клавишалары менен" + +#: ../rules/base.xml.in.h:653 msgid "Use Bosnian digraphs" msgstr "БоÑнийдик диаграфтарды колдонуу" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:654 msgid "Use Croatian digraphs" msgstr "Хорваттык диаграфтарды колдонуу" -#: ../rules/base.xml.in.h:565 -msgid "Use Slovenian digraphs" -msgstr "Словендик диаграфтарды колдонуу" - -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:655 msgid "Use guillemets for quotes" msgstr "Француздук тырмакчаларды тырмакчалардай колдонуу" -#: ../rules/base.xml.in.h:567 -msgid "Use keyboard LED to show alternative layout." -msgstr "" +#: ../rules/base.xml.in.h:656 +msgid "Use keyboard LED to show alternative layout" +msgstr "Клавиатура индикаторлорду кошумча группаларды көрÑөтүү үчүн колдонуу" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:657 msgid "Using space key to input non-breakable space character" msgstr "" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:658 +msgid "Usual space at any level" +msgstr "" + +#: ../rules/base.xml.in.h:659 msgid "Uzb" msgstr "Өзб" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:660 msgid "Uzbekistan" msgstr "ӨзбекиÑтан" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:661 msgid "Vietnam" msgstr "Вьетнам" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:662 +msgid "ViewSonic KU-306 Internet Keyboard" +msgstr "ViewSonic KU-306 Internet Keyboard" + +#: ../rules/base.xml.in.h:663 msgid "Vnm" msgstr "Вьет" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:664 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "" -#: ../rules/base.xml.in.h:574 -msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level." +#: ../rules/base.xml.in.h:665 +msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:666 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:667 msgid "Western" msgstr "Батыш" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:668 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:669 msgid "Winkeys" msgstr "Windows клавиатураÑÑ‹" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:670 msgid "With <\\|> key" -msgstr "" +msgstr "<\\|> клавиша менен" -#: ../rules/base.xml.in.h:580 +#: ../rules/base.xml.in.h:671 msgid "With EuroSign on 5" msgstr "" -#: ../rules/base.xml.in.h:581 +#: ../rules/base.xml.in.h:672 msgid "With guillemets" msgstr "Француздук тырмакчалар менен" -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:673 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:583 +#: ../rules/base.xml.in.h:674 +msgid "Yakut" +msgstr "" + +#: ../rules/base.xml.in.h:675 msgid "Yoruba" msgstr "Йоруба" -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:676 msgid "Z and ZHE swapped" msgstr "З жана Ж орундарын алмаштырган" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:677 msgid "Zar" msgstr "ЮÐÐ " -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:678 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:679 msgid "azerty/digits" msgstr "azerty/цифры" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:680 msgid "digits" -msgstr "" +msgstr "Ñандар" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:681 msgid "displaced semicolon and quote (obsolete)" msgstr "" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:682 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:591 ../rules/sun.xml.in.h:132 +#: ../rules/base.xml.in.h:683 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:684 msgid "qwerty, extended Backslash" msgstr "qwerty, Backslash кеңейтилген функциÑлары" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:685 msgid "qwerty/digits" msgstr "qwerty/Ñандар" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:686 msgid "qwertz" msgstr "qwertz" -#: ../rules/sun.xml.in.h:1 -msgid "\"Typewriter\"" -msgstr "БаÑма машинаÑÑ‹" +#~ msgid "(Legacy) Dvorak" +#~ msgstr "(ÐÑкирген) Dvorak" -#: ../rules/sun.xml.in.h:17 -msgid "Acts as Shift with locking. Shift cancels Caps." -msgstr "Shift блокировка менен амал жаÑайт.Shift Caps амалын убактылуу токтотот." +#~ msgid "Add the EuroSign to the 5 key." +#~ msgstr "5 деген клавишага Евро белгиÑин кошуу." -#: ../rules/sun.xml.in.h:18 -msgid "Acts as Shift with locking. Shift doesn't cancel Caps." -msgstr "Shift блокировка менен амал жаÑайт. Shift Caps амалына тоÑкол болбойт." +#~ msgid "Add the EuroSign to the E key." +#~ msgstr "E клавишаÑына Евро белгиÑин кошуу." -#: ../rules/sun.xml.in.h:19 -msgid "Alt+Control changes group" -msgstr "Alt+Control группаны алмаштырат" +#~ msgid "Alt+Shift change layout." +#~ msgstr "Alt+Shift раÑкладканы алмаштырат." -#: ../rules/sun.xml.in.h:20 -msgid "Alt+Shift changes group" -msgstr "Alt+Shift группаны алмаштырат" +#~ msgid "Brazilian ABNT2" +#~ msgstr "Бразилдик ABNT2" -#: ../rules/sun.xml.in.h:21 -msgid "Basic" -msgstr "Ðегизги" +#~ msgid "Caps Lock is Compose." +#~ msgstr "Caps Lock Compose клавишаÑÑ‹." -#: ../rules/sun.xml.in.h:23 -msgid "Belgian" -msgstr "БельгиÑлык" +#~ msgid "Press Left Alt key to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:25 -msgid "Both Alt keys together change group" -msgstr "Ðки Alt клавишалары бирге баÑылганда группаны алмаштырат" +#~ msgid "Press Left Win-key to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо Ñол Win клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:26 -msgid "Both Ctrl keys together change group" -msgstr "Ðки Ctrl клавишалары бирге баÑылганда группаны алмаштырат" +#~ msgid "Press Right Alt key to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо оң Alt клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:27 -msgid "Both Shift keys together change group" -msgstr "Ðки Shift клавишалары бирге баÑылганда группаны алмаштырат" +#~ msgid "Press Right Ctrl to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо оң Ctrl клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:28 -msgid "Bulgarian" -msgstr "Болгардык" +#~ msgid "Press Right Win-key to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо оң Win клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:30 -msgid "Canadian" -msgstr "Канаддык" +#~ msgid "Press any of Alt keys to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо Alt клавишалардын бирөөÑүнүн баÑылышы менен." -#: ../rules/sun.xml.in.h:31 -msgid "Caps Lock is Compose" -msgstr "Caps Lock Compose клавишадай" +#~ msgid "Press any of Win-keys to choose 3rd level." +#~ msgstr "3-чү денгÑÑлди тандоо Win клавишалардын бирөөÑүнүн баÑылышы менен." -#: ../rules/sun.xml.in.h:32 -msgid "Caps Lock key changes group" -msgstr "Caps Lock клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Right Win-key is Compose." +#~ msgstr "Оң Win Compose клавишадай." -#: ../rules/sun.xml.in.h:34 -msgid "Caps_Lock LED shows alternative group" -msgstr "Caps_Lock индикатору башка группаны көрÑөтөт" +#~ msgid "SCG" +#~ msgstr "СМÐ" -#: ../rules/sun.xml.in.h:35 -msgid "Control Key Position" -msgstr "Control клавишанын жайгашууÑу" +#~ msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." +#~ msgstr "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -#: ../rules/sun.xml.in.h:36 -msgid "Control key at bottom left" -msgstr "Control клавишаÑÑ‹ төмөн Ñол жакта жайгашкан" +#~ msgid "US keyboard with Slovenian digraphs" +#~ msgstr "ÐКШ клавиатураÑÑ‹ Ñловендик диграфтар менен" -#: ../rules/sun.xml.in.h:37 -msgid "Control key at left of 'A'" -msgstr "Control клавишаÑÑ‹ 'Ф' Ñол жагында" +#~ msgid "Urdu" +#~ msgstr "Урду" -#: ../rules/sun.xml.in.h:38 -msgid "Control+Shift changes group" -msgstr "Control+Shift группаны алмаштырат" +#~ msgid "Use Slovenian digraphs" +#~ msgstr "Словендик диаграфтарды колдонуу" -#: ../rules/sun.xml.in.h:40 -msgid "Czech" -msgstr "Чех" +#~ msgid "\"Typewriter\"" +#~ msgstr "БаÑма машинаÑÑ‹" -#: ../rules/sun.xml.in.h:41 -msgid "Danish" -msgstr "Даттык" +#~ msgid "Alt+Control changes group" +#~ msgstr "Alt+Control группаны алмаштырат" -#: ../rules/sun.xml.in.h:45 -msgid "DeuCH" -msgstr "ÐемШВ" +#~ msgid "Alt+Shift changes group" +#~ msgstr "Alt+Shift группаны алмаштырат" -#: ../rules/sun.xml.in.h:47 -msgid "Dvo" -msgstr "Dvo" +#~ msgid "Belgian" +#~ msgstr "БельгиÑлык" -#: ../rules/sun.xml.in.h:52 -msgid "Finnish" -msgstr "Финдик" +#~ msgid "Bulgarian" +#~ msgstr "Болгардык" -#: ../rules/sun.xml.in.h:54 -msgid "FraCH" -msgstr "ФраШВ" +#~ msgid "Canadian" +#~ msgstr "Канаддык" -#: ../rules/sun.xml.in.h:57 -msgid "German" -msgstr "" +#~ msgid "Caps Lock key changes group" +#~ msgstr "Caps Lock клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:58 -msgid "Group Shift/Lock behavior" -msgstr "" +#~ msgid "Caps_Lock LED shows alternative group" +#~ msgstr "Caps_Lock индикатору башка группаны көрÑөтөт" -#: ../rules/sun.xml.in.h:60 -msgid "Hungarian" -msgstr "Венгердик" +#~ msgid "Control Key Position" +#~ msgstr "Control клавишанын жайгашууÑу" -#: ../rules/sun.xml.in.h:64 -msgid "Italian" -msgstr "ИтальÑндык" +#~ msgid "Control key at bottom left" +#~ msgstr "Control клавишаÑÑ‹ төмөн Ñол жакта жайгашкан" -#: ../rules/sun.xml.in.h:65 -msgid "Japanese" -msgstr "Япондук" +#~ msgid "Control key at left of 'A'" +#~ msgstr "Control клавишаÑÑ‹ 'Ф' Ñол жагында" -#: ../rules/sun.xml.in.h:67 -msgid "Left Alt key changes group" -msgstr "Сол Alt клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Control+Shift changes group" +#~ msgstr "Control+Shift группаны алмаштырат" -#: ../rules/sun.xml.in.h:68 -msgid "Left Alt key switches group while pressed" -msgstr "Сол Alt клавишаÑÑ‹ убактылуу группаны алмаштырат" +#~ msgid "Czech" +#~ msgstr "Чех" -#: ../rules/sun.xml.in.h:69 -msgid "Left Ctrl key changes group" -msgstr "Сол Ctrl клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Danish" +#~ msgstr "Даттык" -#: ../rules/sun.xml.in.h:70 -msgid "Left Shift key changes group" -msgstr "Сол Shift клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "DeuCH" +#~ msgstr "ÐемШВ" -#: ../rules/sun.xml.in.h:71 -msgid "Make CapsLock an additional Control" -msgstr "CapsLock кошумча Control клавиша катары колдонуу" +#~ msgid "Dvo" +#~ msgstr "Dvo" -#: ../rules/sun.xml.in.h:76 -msgid "Norwegian" -msgstr "Ðорвеждик" +#~ msgid "Finnish" +#~ msgstr "Финдик" -#: ../rules/sun.xml.in.h:77 -msgid "Num_Lock LED shows alternative group" -msgstr "Num_Lock индикатору кошумча группаны көрÑөтөт" +#~ msgid "FraCH" +#~ msgstr "ФраШВ" -#: ../rules/sun.xml.in.h:80 -msgid "Polish" -msgstr "Польдук" +#~ msgid "Hungarian" +#~ msgstr "Венгердик" -#: ../rules/sun.xml.in.h:81 -msgid "Polish with Polish quotes on key \"1/!\"" -msgstr "Польдук клавишалар польдук тырмакчалар менен \"1/!\"" +#~ msgid "Italian" +#~ msgstr "ИтальÑндык" -#: ../rules/sun.xml.in.h:82 -msgid "Portuguese" -msgstr "Португалдык" +#~ msgid "Japanese" +#~ msgstr "Япондук" -#: ../rules/sun.xml.in.h:83 -msgid "Press Left Alt key to choose 3rd level" -msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен." +#~ msgid "Left Alt key changes group" +#~ msgstr "Сол Alt клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:84 -msgid "Press Right Alt key to choose 3rd level" -msgstr "3-чү денгÑÑлди тандоо оң Alt клавишанын баÑылышы менен." +#~ msgid "Left Ctrl key changes group" +#~ msgstr "Сол Ctrl клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:85 -msgid "Press Right Alt-key to choose 3rd level, Shift+Right Alt-key is Multi_Key" -msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен.Shift жана оң Alt бирге Multi_Key катары амал жаÑайт" +#~ msgid "Left Shift key changes group" +#~ msgstr "Сол Shift клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:86 -msgid "Press Right Control to choose 3rd level" -msgstr "3-чү денгÑÑлди тандоо оң Control клавишанын баÑылышы менен." +#~ msgid "Norwegian" +#~ msgstr "Ðорвеждик" -#: ../rules/sun.xml.in.h:87 -msgid "Press any of Alt keys to choose 3rd level" -msgstr "3-чү денгÑÑлди тандоо Alt клавишалардан бирөөÑүнүн баÑылышы менен." +#~ msgid "Num_Lock LED shows alternative group" +#~ msgstr "Num_Lock индикатору кошумча группаны көрÑөтөт" -#: ../rules/sun.xml.in.h:89 -msgid "Right Alt key changes group" -msgstr "Оң Alt клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Polish" +#~ msgstr "Польдук" -#: ../rules/sun.xml.in.h:91 -msgid "Right Alt switches group while pressed" -msgstr "Оң Alt клавишаÑÑ‹ баÑылганда убактылуу группаны алмаштырат" +#~ msgid "Portuguese" +#~ msgstr "Португалдык" -#: ../rules/sun.xml.in.h:92 -msgid "Right Control key works as Right Alt" -msgstr "Оң Control оң Alt клавишадай" +#~ msgid "Press Left Alt key to choose 3rd level" +#~ msgstr "3-чү денгÑÑлди тандоо Ñол Alt клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:93 -msgid "Right Ctrl key changes group" -msgstr "Оң Ctrl клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Press Right Control to choose 3rd level" +#~ msgstr "3-чү денгÑÑлди тандоо оң Control клавишанын баÑылышы менен." -#: ../rules/sun.xml.in.h:94 -msgid "Right Shift key changes group" -msgstr "Оң Shift клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Press any of Alt keys to choose 3rd level" +#~ msgstr "3-чү денгÑÑлди тандоо Alt клавишалардан бирөөÑүнүн баÑылышы менен." -#: ../rules/sun.xml.in.h:97 -msgid "Scroll Lock changes group" -msgstr "Scroll Lock клавишаÑÑ‹ группаны алмаштырат" +#~ msgid "Right Alt key changes group" +#~ msgstr "Оң Alt клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:98 -msgid "Scroll_Lock LED shows alternative group" -msgstr "Scroll_Lock индикатору кошумча панелди көрÑөтөт" +#~ msgid "Right Control key works as Right Alt" +#~ msgstr "Оң Control оң Alt клавишадай" -#: ../rules/sun.xml.in.h:99 -msgid "Shift with numpad keys works as in MS Windows" -msgstr "Shift клавишаÑÑ‹ Ñандык клавиатурада MS Windows'тогу клавишадай амал жаÑайт" +#~ msgid "Right Ctrl key changes group" +#~ msgstr "Оң Ctrl клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:100 -msgid "Shift+CapsLock changes group" -msgstr "Shift жана Caps Lock клавишалары бирге баÑылганда группаны алмаштарыт" +#~ msgid "Right Shift key changes group" +#~ msgstr "Оң Shift клавишаÑÑ‹ группаны алмаштырат" -#: ../rules/sun.xml.in.h:101 -msgid "Slovak" -msgstr "Словак" +#~ msgid "Scroll_Lock LED shows alternative group" +#~ msgstr "Scroll_Lock индикатору кошумча панелди көрÑөтөт" -#: ../rules/sun.xml.in.h:102 -msgid "Spanish" -msgstr "ИÑпандык" +#~ msgid "Slovak" +#~ msgstr "Словак" -#: ../rules/sun.xml.in.h:105 -msgid "Sun Type 4" -msgstr "Sun Type 4" +#~ msgid "Spanish" +#~ msgstr "ИÑпандык" -#: ../rules/sun.xml.in.h:106 -msgid "Sun Type 5" -msgstr "Sun Type 5" +#~ msgid "Sun Type 4" +#~ msgstr "Sun Type 4" -#: ../rules/sun.xml.in.h:107 -msgid "Sun Type 5 European" -msgstr "Sun Type 5 Европейдик" +#~ msgid "Sun Type 5 European" +#~ msgstr "Sun Type 5 Европейдик" -#: ../rules/sun.xml.in.h:108 -msgid "Sun Type 5 Unix" -msgstr "Sun Type 5 Unix үчүн" +#~ msgid "Sun Type 5 Unix" +#~ msgstr "Sun Type 5 Unix үчүн" -#: ../rules/sun.xml.in.h:109 -msgid "Sun Type 6" -msgstr "Sun Type 6" +#~ msgid "Sun Type 6" +#~ msgstr "Sun Type 6" -#: ../rules/sun.xml.in.h:110 -msgid "Sun Type 6 Unix" -msgstr "Sun Type 6 Unix үчүн" +#~ msgid "Sun Type 6 Unix" +#~ msgstr "Sun Type 6 Unix үчүн" -#: ../rules/sun.xml.in.h:111 -msgid "Sun Type 6 with Euro key" -msgstr "Sun Type 6 Евро белгиÑи менен" +#~ msgid "Sun Type 6 with Euro key" +#~ msgstr "Sun Type 6 Евро белгиÑи менен" -#: ../rules/sun.xml.in.h:114 -msgid "Swap Control and Caps Lock" -msgstr "Control жана Caps Lock клавишалардын ордун алмаштыруу" +#~ msgid "Swap Control and Caps Lock" +#~ msgstr "Control жана Caps Lock клавишалардын ордун алмаштыруу" -#: ../rules/sun.xml.in.h:116 -msgid "Swedish" -msgstr "Шведдик" +#~ msgid "Swedish" +#~ msgstr "Шведдик" -#: ../rules/sun.xml.in.h:117 -msgid "Swiss French" -msgstr "ШвейцариÑлык французча" +#~ msgid "Swiss French" +#~ msgstr "ШвейцариÑлык французча" -#: ../rules/sun.xml.in.h:118 -msgid "Swiss German" -msgstr "ШвейцариÑлык немецче" +#~ msgid "Swiss German" +#~ msgstr "ШвейцариÑлык немецче" -#: ../rules/sun.xml.in.h:121 -msgid "Turkish" -msgstr "Түркчө" +#~ msgid "Turkish" +#~ msgstr "Түркчө" -#: ../rules/sun.xml.in.h:122 -msgid "Turkish (F)" -msgstr "Түркчө (F) менен" +#~ msgid "Turkish (F)" +#~ msgstr "Түркчө (F) менен" -#: ../rules/sun.xml.in.h:123 -msgid "Turkish Alt-Q Layout" -msgstr "Түрк раÑкладкаÑÑ‹ Alt-Q менен" +#~ msgid "Turkish Alt-Q Layout" +#~ msgstr "Түрк раÑкладкаÑÑ‹ Alt-Q менен" -#: ../rules/sun.xml.in.h:125 -msgid "U.S. English w/ ISO9995-3" -msgstr "ÐÐ½Ð³Ð»Ð¸Ñ (ÐКШ) ISO9995-3 менен" - -#: ../rules/sun.xml.in.h:128 -msgid "Use keyboard LED to show alternative group" -msgstr "Клавиатурдук индикаторлорду кошумча группаларды көрÑөтүү үчүн колдонуу" - -#: ../rules/sun.xml.in.h:129 -msgid "Uses internal capitalization. Shift cancels Caps." -msgstr "Ички капитализацыÑны ачат. Shift CapsLock амалын токтотот." - -#: ../rules/sun.xml.in.h:130 -msgid "Uses internal capitalization. Shift doesn't cancel Caps." -msgstr "Ички капитализацыÑны ачат. Shift CapsLock амалына тааÑир тийгизбейт." +#~ msgid "U.S. English w/ ISO9995-3" +#~ msgstr "ÐÐ½Ð³Ð»Ð¸Ñ (ÐКШ) ISO9995-3 менен" -#: ../rules/sun.xml.in.h:131 -msgid "bksl" -msgstr "bksl" +#~ msgid "bksl" +#~ msgstr "bksl" -#: ../rules/sun.xml.in.h:133 -msgid "type4" -msgstr "type4" +#~ msgid "type4" +#~ msgstr "type4" diff --git a/xorg-server/xkbdata.src/po/lt.po b/xorg-server/xkbdata.src/po/lt.po index ae0242b0d..b9e9e75d2 100644 --- a/xorg-server/xkbdata.src/po/lt.po +++ b/xorg-server/xkbdata.src/po/lt.po @@ -2,18 +2,21 @@ # Copyright (C) 2009 Free Software Foundation, Inc. # This file is distributed under the same license as the xkeyboard-config package. # Gintautas Miliauskas <gintautas@miliauskas.lt>, 2009. -# +# Rimas Kudelis <rq@akl.lt>, 2009. msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.6pre1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-26 12:47+0300\n" -"Last-Translator: Gintautas Miliauskas <gintautas@miliauskas.lt>\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-27 15:58+0300\n" +"Last-Translator: Rimas Kudelis <rq@akl.lt>\n" "Language-Team: Lithuanian <komp_lt@konferencijos.lt>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" +"Language: lt\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && (n%100<10 || n%100>=20) ? 1 : 2);\n" +"X-Generator: Virtaal 0.4.0\n" #: ../rules/base.xml.in.h:1 msgid "(F)" @@ -357,7 +360,7 @@ msgstr "BTC 9116U Mini Wireless Internet and Gaming" #: ../rules/base.xml.in.h:86 msgid "Baltic+" -msgstr "" +msgstr "Baltic+" #: ../rules/base.xml.in.h:87 msgid "Ban" @@ -368,2394 +371,2439 @@ msgid "Bangladesh" msgstr "BangladeÅ¡as" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "BaÅ¡kirų" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Baltarusija" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgija" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengalų" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengalų Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonominÄ— pagal DvorakÄ…" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonominÄ— pagal DvorakÄ…, tik Latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Butanas" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "BiblinÄ— hebrajų" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnija ir Hercegovina" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Vienu metu paspausti abu Alternatyvos klaviÅ¡ai" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Vienu metu paspausti abu Valdymo (Ctrl) klaviÅ¡ai" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Vienu metu paspausti abu Antrojo lygio (Shift) klaviÅ¡ai" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Brailio terminalas" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brazilija" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bretonų" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarija" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Kambodža" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Didžiosios raidÄ—s" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "Didžiosios raidÄ—s" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "Didž (į pirmÄ…jį iÅ¡dÄ—stymÄ…), Lyg2+Didž (į paskutinį iÅ¡dÄ—stymÄ…)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "Didž (kol nuspaustas); Alt+Didž atlieka pirminÄ™ Didž klaviÅ¡o funkcijÄ…" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "Didž klaviÅ¡as veikia kaip įprasta; Lyg2 „pristabdo“ Didž veiksenÄ…" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "Didž klaviÅ¡as veikia kaip įprasta; Lyg2 neįtakoja Didž veiksenos" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "Didž klaviÅ¡as nenaudojamas" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Didžiųjų raidžių klaviÅ¡o veiksena" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "Didž klaviÅ¡as veikia kaip nuolat nuspaustas Lyg2 (įtakoja visus klaviÅ¡us)" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "Didž klaviÅ¡as įjungia įprastÄ… raidžių vertimÄ… didžiosiomis" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "Didž įjungia įtaisytÄ…jį raidžių vertimÄ… didžiosiomis. Lyg2 „pristabdo“ Didž klaviÅ¡o veikimÄ…" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "Didž įjungia įtaisytÄ…jį raidžių vertimÄ… didžiosiomis. Lyg2 neįtakoja Didž veiksenos" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "KataloniÅ¡kasis variantas su taÅ¡ku L raidÄ—s centre" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "SedilÄ—" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "ÄŒerokių" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" -msgstr "" +msgstr "Cherry B.UNLIMITED" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternatyvus variantas)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Kinija" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "ÄŒuvašų" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "ÄŒuvašų, lotyniÅ¡ki raÅ¡menys" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "KlasikinÄ—" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "KlasikinÄ— Dvorako" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 klavišų)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 klavišų)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 klaviÅ¡ai)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq klaviatÅ«ra" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Compose klaviÅ¡o pozicija" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongo demokratinÄ— respublika" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" -msgstr "" +msgstr "Vald + Alt + Naikinimas iÅ¡ kairÄ—s" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Vald funkcijÄ… priskirti Alt klaviÅ¡ams, o Alt funkcijÄ… – Win klaviÅ¡ams" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Vald funkcijÄ… priskirti Win klaviÅ¡ams bei įprastiems Vald klaviÅ¡ams" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Krymo totorių (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Krymo totorių (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Krymo totorių (turkiÅ¡kas Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Krymo totorių (turkiÅ¡kas F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Krymo totorių (turkiÅ¡kas Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroatija" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Valdymo (Ctrl) klaviÅ¡o pozicija" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Vald+Lyg2" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "KiriliÅ¡kasis" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "KiriliÅ¡kasis, su kampinÄ—mis kabutÄ—mis" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "KriliÅ¡kasis, raidÄ—s Z ir Ž sukeistos" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "ÄŒekija" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" -msgstr "" +msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "TÄ™sties ženklas – deÅ¡ininis kirtis" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "TÄ™sties ženklai – kairinis ir deÅ¡ininis kirtis" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Numatytieji skaitmenų srities klaviÅ¡ai" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101 klaviÅ¡o PC klaviatÅ«ra" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Inspiron 6xxx/8xxx serijos skreitinukas" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Precision M serijos skreitinukas" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude serijos skreitinukas" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keyboard" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danija" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 serija" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorako" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorako (JK skyryba)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorako tarptautinis" -#: ../rules/base.xml.in.h:201 -#, fuzzy +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" -msgstr "Dvorako, lenkiÅ¡kos kabutÄ—s ant klaviÅ¡o \"1/!\"" +msgstr "Dvorako, lenkiÅ¡kos kabutÄ—s ant klaviÅ¡o „1“" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorako, lenkiÅ¡kos kabutÄ—s ant kabuÄių klaviÅ¡o" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Rytų" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Ä®jungti papildomus tipografinius simbolius" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" -msgstr "" +msgstr "Anglų" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 -#, fuzzy +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" -msgstr "Pro, Skaitmenų sritis" +msgstr "Ä®vesties klaviÅ¡as skaitmenų srityje" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonominis" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estija" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopija" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev valdoma klaviatÅ«ra" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "IÅ¡plÄ—stasis" -#: ../rules/base.xml.in.h:222 -#, fuzzy +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" -msgstr "IÅ¡plÄ—stasis" +msgstr "IÅ¡plÄ—stasis - „Windows“ iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "IÅ¡plÄ—stas kairinis brÅ«kÅ¡nys" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F raidÄ—s (F) variantas" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Farerai" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Suomija" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Keturių lygių, su abstrakÄiais skyrikliais" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Keturių lygių, pirmajame kablelis" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Keturių lygių, pirmajame taÅ¡kas" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "Keturių lygių, pirmajame taÅ¡kas, Latin-9 ribojimas" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Keturių lygių, pirmajame persiÅ¡kas skyriklis (momayyez)" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "PrancÅ«zija" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "PrancÅ«zų" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "PrancÅ«zų (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "PrancÅ«zų (senasis)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "PrancÅ«ziÅ¡kas Dvorako" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "PrancÅ«zų, su Sun tÄ™sties ženklais" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "PrancÅ«zų, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO skreitinukas" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Ä®prastinÄ— PC 101 klaviÅ¡o" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Ä®prastinÄ— PC 102 klavišų (europinÄ—)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Ä®prastinÄ— PC 104 klavišų" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Ä®prastinÄ— PC 105 klavišų (europinÄ—)" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:257 -#, fuzzy +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" -msgstr "Genius Comfy KB-12e" +msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Gruzija" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Gruzinų" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Gruzinų AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "VokieÄių (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "VokieÄių, su Sun tÄ™sties ženklais" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "VokieÄių, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Vokietija" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Gana" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Graikija" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "GrupÄ— perjungiama daugybos/dalybos klaviÅ¡u" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "GvinÄ—ja" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gudžarati" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking Keyboard" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking Keyboard for Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Å eÅ¡ioliktainÄ—" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" -msgstr "" +msgstr "Hindi Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "HomofoninÄ—" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Vengrija" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Win klaviÅ¡ams priskirti Hyper funkcijÄ…" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E (europinÄ—)" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO alternatyvusis" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Islandija" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "TildÄ— veikia kaip tÄ™sties ženklas" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Indija" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Tarptautinis (tÄ™sties ženklai pasiekiami per Lyg3 klavišą)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Tarptautinis (su tÄ™sties ženklais)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitutas" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iranas" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irakas" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Airija" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Izraelis" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italija" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japonija" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "JaponiÅ¡ka (PC-98xx serijos)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Nuostatos japoniÅ¡kai klaviatÅ«rai" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmukų" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana Lock klaviÅ¡as fiksuojantis" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "KaÅ¡ubų" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazachų, su rusiÅ¡komis raidÄ—mis" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazachstanas" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" -msgstr "" +msgstr "Klavišų seka X serverio darbui nutraukti" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "KlaviÅ¡ai treÄiajam lygiui pasirinkti" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "KlaviÅ¡ai iÅ¡dÄ—stymui pakeisti" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Skaitmenų sritis" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 -#, fuzzy +#: ../rules/base.xml.in.h:347 msgid "Kgz" -msgstr "Kaz" +msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komija" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "KorÄ—jos respublika" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Kutenajų" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdų, (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdų, arabų-lotynų" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdų (lotyniÅ¡kas Alt-Q)" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdų (lotyniÅ¡kas Q)" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgizija" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laosas" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Skreitinuko Compaq (pvz., Armada) klaviatÅ«ra" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Skreitinukas Compaq (pvz., Presario), internetinÄ— klaviatÅ«ra" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Skreitinukas eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "LotyniÅ¡kasis" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Lotynų Amerika" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "LotyniÅ¡kasis unikodinis" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "LotyniÅ¡kasis unikodinis, QWERTY" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "LotyniÅ¡kasis QWERTY" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "LotyniÅ¡kasis unikodinis" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "LotyniÅ¡kasis unikodinis, raidÄ—s Z ir Ž sukeistos" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "LotyniÅ¡kasis, su kampinÄ—mis kabutÄ—mis" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Latvija" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Kairysis Alt" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Kairysis Alt (kol nuspaustas)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Kairysis Alt sukeistas su kairiuoju Win" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Kairysis Vald" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Kairysis Vald+kairysis Lyg2" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Kairysis Lyg2" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Kairysis Win" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Kairysis Win (į pirmÄ…jį iÅ¡dÄ—stymÄ…), deÅ¡inysis Win/Meniu (į paskutinį iÅ¡dÄ—stymÄ…)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Kairysis Win (kol nuspaustas)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Kairei rankai" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorako kairiarankiams" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Senasis" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Senasis Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "PaveldÄ—tasis klaviÅ¡as su kableliu" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "PaveldÄ—tasis klaviÅ¡as su taÅ¡ku" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Mažiau/Daugiau" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Lietuva" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternatyvus variantas)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 -#, fuzzy +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" -msgstr "Logitech Cordless Desktop Pro (alternatyvus variantas2)" +msgstr "Logitech Cordless Desktop Pro (alternatyvus variantas 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 (papildomi klaviÅ¡ai G15daemon pagalba)" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (modelis Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Žemutinių sorbų" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Žemutinių sorbų (QWERTZ)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (europinÄ—)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonija" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh (senoji)" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, su Sun tÄ™sties ženklais" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" -msgstr "Didžiųjų raidžių klavišą paversti papildomu Naikinimo kairÄ—n (Backspace) klaviÅ¡u" +msgstr "Didžiųjų raidžių klavišą paversti papildomu Naikinimo kairÄ—n („Backspace“) klaviÅ¡u" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Didžiųjų raidžių klavišą paversti papildomu Valdymo klaviÅ¡u" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Didžiųjų raidžių klavišą paversti papildomu Grįžimo (Esc) klaviÅ¡u" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Didžiųjų raidžių klavišą paversti papildomu „Hyper“ klaviÅ¡u" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Didžiųjų raidžių klavišą paversti papildomu Skaitmenų („NumLock“) klaviÅ¡u" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Didžiųjų raidžių klavišą paversti papildomu „Super“ klaviÅ¡u" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malajalių" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malajalių Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldyvai" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "MaltieÄių klaviatÅ«ra su JAV iÅ¡dÄ—stymu" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maorių" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Meniu" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Kairiajam Win klaviÅ¡ui priskirti Meta funkcijÄ…" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Win klaviÅ¡ams priskirti Meta funkcijÄ…" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Å vediÅ¡ka" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Ä®vairios suderinamumo nuostatos" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolija" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Juodkalnija" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokas" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Daugiakalbis" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Daugiakalbis, pirmoji dalis" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Daugiakalbis, antroji dalis" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Mianmaras" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F tipo naikinimas kairÄ—n" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo Esperanto" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo JAV klaviatÅ«roms" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepalas" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Nyderlandai" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Naujasis fonetinis" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigerija" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Jungiamasis tarpas ketvirtajame lygyje" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Jungiamasis tarpas ketvirtajame lygyje, siauras jungiamasis tarpas Å¡eÅ¡tajame lygyje" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Jungiamasis tarpas ketvirtajame lygyje, siauras jungiamasis tarpas Å¡eÅ¡tajame lygyje (Vald+Lyg2)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Jungiamasis tarpas antrajame lygyje" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Jungiamasis tarpas treÄiajame lygyje" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Jungiamasis tarpas treÄiajame lygyje, ketvirtajame lygyje nieko" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Jungiamasis tarpas treÄiajame lygyje, siauras jungiamasis tarpas ketvirtajame lygyje" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Å iaurÄ—s samių" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Å iaurÄ—s samių, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norvegija" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "Skaitmenys" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Skaitmenų srities Å alinimo klaviÅ¡o veiksena" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Skaitmenų srities klaviÅ¡ai veikia kaip Mac'e" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Skaitmenų srities iÅ¡dÄ—stymo parinkimas" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC PuÅ¡tu" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Pietų Uzbekijos" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" -msgstr "" +msgstr "OÄitarų" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Orijų" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet keyboard" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetian" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" -msgstr "Osetinų, Windows iÅ¡dÄ—stymas" +msgstr "Osetinų, „Windows“ iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Osetų, senasis" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistanas" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "PuÅ¡tu" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" -msgstr "" +msgstr "Pattachote" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persų, su persiÅ¡ka skaitmenų sritimi" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetinis" -#: ../rules/base.xml.in.h:515 -#, fuzzy +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" -msgstr "Osetinų, Windows iÅ¡dÄ—stymas" +msgstr "Fonetinis „Windows“ iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Lenkija" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Politoninis" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugalija" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Pro, Skaitmenų sritis" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" -msgstr "" +msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorako programuotojų" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "DeÅ¡inysis Alt" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "DeÅ¡inysis Alt (kol nuspaustas)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "DeÅ¡inysis Alt niekada neįjungia treÄiojo lygio" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "DeÅ¡inysis Alt, Lyg2+deÅ¡inysis Alt atlieka Multi_Key (Compose) funkcijÄ…" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "DeÅ¡inysis Vald" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "DeÅ¡inysis Vald (kol nuspaustas)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "DeÅ¡iniajam Vald klaviÅ¡ui priskirti deÅ¡iniojo Alt funkcijÄ…" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "DeÅ¡inysis Lyg2" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "DeÅ¡inysis Win" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "DeÅ¡inysis Win (kol nuspaustas)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "DeÅ¡inei rankai" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorako deÅ¡iniarankiams" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumunija" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumunų klaviatÅ«ra su vokiÅ¡komis raidÄ—mis" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumunų klaviatÅ«ra su vokiÅ¡komis raidÄ—mis, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusija" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Rusų" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Rusų fonetinis" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Rusų fonetinis Dvorako" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Rusų fonetinis, be tÄ™sties ženklų" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Rusų, su kazachų raidÄ—mis" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 -#, fuzzy +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Ekrano slinkimas" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "Ekrano slinkimas" -#: ../rules/base.xml.in.h:562 -#, fuzzy +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Å uÅ¡vapų" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "KabliataÅ¡kis treÄiÄ…jame lygyje" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbija" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Lyg2 atÅ¡aukia DidžiÄ…sias raides" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Lyg2 neatÅ¡aukia didžiųjų raidžių, o įjungia 3-iÄ…jį lygį" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Lyg2 su skaitmenų srities klaviÅ¡ais veikia kaip MS Windows sistemoje" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Lyg2+Didž" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Paprastasis" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakija" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "SlovÄ—nija" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Pietų Afrika" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Pietų Uzbekijos" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Ispanija" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Specialiosios sekos (Vald+Alt+<klaviÅ¡as>) apdorojamos serveryje" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Å ri lanka" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standartinis" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standartinis (su sedile)" -#: ../rules/base.xml.in.h:580 -#, fuzzy -msgid "Standard Phonetic" -msgstr "Urdu, fonetinis" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standartinis RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standartinis RSTU ant rusiÅ¡ko iÅ¡dÄ—stymo" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun su tÄ™sties ženklais" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Sukeisti Valdymo ir Didžiųjų raidžių klaviÅ¡us" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Sukeisti Grįžimo (Esc) ir Didžiųjų raidžių klaviÅ¡us" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Å vedija" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Å veicarija" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (planÅ¡etinis kompiuteris)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Sirija" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Sirijos" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Sirijos fonetinis" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadžikistanas" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamilų" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamilų TAB raÅ¡omoji maÅ¡inÄ—lÄ—" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamilų TSCII raÅ¡omoji maÅ¡inÄ—lÄ—" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamilų unikodinis" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Totorių" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Tailandas" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "TibetieÄių" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "TibetieÄių (su ASCII skaitmenimis)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Berberų" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Berberų alternatyvusis" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Berberų alternatyvusis fonetinis" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Berberų iÅ¡plÄ—stasis" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Berberų iÅ¡plÄ—stasis fonetinis" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Berberų fonetinis" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "TildÄ—s (~) variantas" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Ant atitinkamų Dvorako klaviatÅ«ros klavišų" -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Ant atitinkamų QWERTY klaviatÅ«ros klavišų" -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -#, fuzzy -msgid "Traditional Phonetic" -msgstr "Berberų fonetinis" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Tradicinis fonetinis" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" -msgstr "" +msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turkija" -#: ../rules/base.xml.in.h:631 -#, fuzzy +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" -msgstr "Tadžikistanas" +msgstr "TurkmÄ—nistanas" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Spausdinimo maÅ¡inÄ—lÄ—s iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW iÅ¡dÄ—stymas (tik raidÄ—s su diakritikais)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "JAV klaviatÅ«ra su bosniÅ¡kais dviraidžiais" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "JAV klaviatÅ«ra su bosniÅ¡kais raÅ¡menimis" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "JAV klaviatÅ«ra su kroatiÅ¡kais dviraidžiais" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "JAV klaviatÅ«ra su kroatiÅ¡kais raÅ¡menimis" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "JAV klaviatÅ«ra su estiÅ¡kais raÅ¡menimis" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "JAV klaviatÅ«ra su italiÅ¡kais raÅ¡menimis" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "JAV klaviatÅ«ra su lietuviÅ¡kais raÅ¡menimis" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "JAV klaviatÅ«ra su slovÄ—niÅ¡kais raÅ¡menimis" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "JAV" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurtų" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraina" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unikodiniai priedai (rodyklÄ—s ir matematiniai operatoriai)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unikodiniai priedai (rodyklÄ—s ir matematiniai operatoriai). Matematiniai operatoriai numatytame lygyje" -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "JungtinÄ— karalystÄ—" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, alternatyvus fonetinis" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, fonetinis" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" -msgstr "Urdu, Windows iÅ¡dÄ—stymas" +msgstr "Urdu, „Windows“ iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "BosniÅ¡ki dviraidžiai" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "KroatiÅ¡ki dviraidžiai" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "KampinÄ—s kabutÄ—s" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "KlaviatÅ«ros diodu indikuoti nepagrindinius iÅ¡dÄ—stymus" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Tarpo klaviÅ¡o naudojimas jungiamajam tarpui įvesti" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Ä®prastas tarpas visuose lygiuose" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistanas" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnamas" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 Internet Keyboard" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 skaitmenų sritis su unikodiniais priedais (rodyklÄ—mis ir matematiniais operatoriais)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 skaitmenų sritis su unikodiniais priedais (rodyklÄ—mis ir matematiniais operatoriais). Matematiniai operatoriai numatytame lygyje" -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang 724, AZERTY modelis" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "VakarietiÅ¡kasis" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook XP5 modelis" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" -msgstr "Windows iÅ¡dÄ—stymas" +msgstr "„Windows“ iÅ¡dÄ—stymas" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Su <\\|> klaviÅ¡u" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Euro ženklas ant klaviÅ¡o 5" -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Su kampinÄ—mis kabutÄ—mis" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Jakutų" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Jorubų" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "RaidÄ—s Z ir Ž sukeistos" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "AZERTY" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "AZERTY/skaitmenys" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "skaitmenys" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "nukeltas kabliataÅ¡kis ir kabutÄ— (nenaudotina)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "QWERTY" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "QWERTY, iÅ¡plÄ—stas kairinis brÅ«kÅ¡nys" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "QWERTY/skaitmenys" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "QWERTZ" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsinų" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Kombinaciniai diakritikai vietoje tÄ™sties klavišų" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Tarptautinis (unikodo ženklai kombinuojami Lyg3 klaviÅ¡u)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Tarptautinis (unikodo ženklai kombinuojami Lyg3 klaviÅ¡u, alternatyvusis)" + +#~ msgid "Keypad" +#~ msgstr "Skaitmenų sritis" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pro, Skaitmenų sritis" + +#, fuzzy +#~ msgid "Standard Phonetic" +#~ msgstr "Urdu, fonetinis" + #~ msgid "Brazilian ABNT2" #~ msgstr "Brazilų ABNT2" diff --git a/xorg-server/xkbdata.src/po/nl.po b/xorg-server/xkbdata.src/po/nl.po index 44a8c4c0b..4bc4f8179 100644 --- a/xorg-server/xkbdata.src/po/nl.po +++ b/xorg-server/xkbdata.src/po/nl.po @@ -2,2681 +2,3052 @@ # Copyright (C) 2003, 2004, 2005, 2006 Free Software Foundation, Inc. # This file is distributed under the same license as the xkeyboard-config package. # Taco Witte <tcwitte@cs.uu.nl>, 2003, 2004, 2005, 2006. -# Tino Meinen <a.t.meinen@chello.nl>, 2007, 2008. +# Tino Meinen <tino.meinen@gmail.com>, 2007, 2008, 2009. # ------------------------------------------------------------------------ # Compose -samensteltoets +# dead keys -dode/latente/inactieve # guillemets -Franse aanhalingstekens # (zie http://slackware.jiten.nl/index.cgi?list=leestekens) +# is mapped to -zit op de # layout -indeling/layout/toetsindeling/toetsenbordindeling # LED -lampje (LED-lampje) # legacy -historisch/oud/verouderd # level -niveau # non-breakable space character - niet-afbrekende spatie/harde spatie # numeric keypad -cijferblok -# while pressed -gedurende het indrukken +# while pressed -gedurende het indrukken/ingedrukt houden # win-key -windows-toets/win-toets # # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.4-pre1\n" +"Project-Id-Version: xkeyboard-config-1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2008-09-15 23:52+0100\n" -"PO-Revision-Date: 2008-09-18 02:41+0200\n" -"Last-Translator: Tino Meinen <a.t.meinen@chello.nl>\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-24 17:46+0800\n" +"Last-Translator: Tino Meinen <tino.meinen@gmail.com>\n" "Language-Team: Dutch <vertaling@vrijschrift.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../rules/base.xml.in.h:1 ../rules/evdev.xml.in.h:1 +#: ../rules/base.xml.in.h:1 msgid "(F)" msgstr "(F)" -#: ../rules/base.xml.in.h:2 ../rules/evdev.xml.in.h:2 +#: ../rules/base.xml.in.h:2 msgid "(Legacy) Alternative" msgstr "(Historisch) alternatief" -#: ../rules/base.xml.in.h:3 ../rules/evdev.xml.in.h:3 +#: ../rules/base.xml.in.h:3 msgid "(Legacy) Alternative, Sun dead keys" msgstr "(Historisch) alternatief, Sun ‘dode toetsen’" -#: ../rules/base.xml.in.h:4 ../rules/evdev.xml.in.h:4 +#: ../rules/base.xml.in.h:4 msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(Historisch) alternatief, zonder dode toetsen" -#: ../rules/base.xml.in.h:5 ../rules/evdev.xml.in.h:5 +#: ../rules/base.xml.in.h:5 msgid "101/104 key Compatible" msgstr "101/104-toetsen compatibel" -#: ../rules/base.xml.in.h:6 ../rules/evdev.xml.in.h:6 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "101/qwerty/komma/dode toetsen" -#: ../rules/base.xml.in.h:7 ../rules/evdev.xml.in.h:7 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "101/qwerty/komma/zonder dode toetsen" -#: ../rules/base.xml.in.h:8 ../rules/evdev.xml.in.h:8 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "101/qwerty/punt/dode toetsen" -#: ../rules/base.xml.in.h:9 ../rules/evdev.xml.in.h:9 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "101/qwerty/punt/zonder dode toetsen" -#: ../rules/base.xml.in.h:10 ../rules/evdev.xml.in.h:10 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "101/qwertz/komma/dode toetsen" -#: ../rules/base.xml.in.h:11 ../rules/evdev.xml.in.h:11 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "101/qwertz/komma/zonder dode toetsen" -#: ../rules/base.xml.in.h:12 ../rules/evdev.xml.in.h:12 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "101/qwertz/punt/dode toetsen" -#: ../rules/base.xml.in.h:13 ../rules/evdev.xml.in.h:13 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "101/qwertz/punt/zonder dode toetsen" -#: ../rules/base.xml.in.h:14 ../rules/evdev.xml.in.h:14 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "102/qwerty/komma/dode toetsen" -#: ../rules/base.xml.in.h:15 ../rules/evdev.xml.in.h:15 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "102/qwerty/komma/zonder dode toetsen" -#: ../rules/base.xml.in.h:16 ../rules/evdev.xml.in.h:16 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "102/qwerty/punt/dode toetsen" -#: ../rules/base.xml.in.h:17 ../rules/evdev.xml.in.h:17 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "102/qwerty/punt/zonder dode toetsen" -#: ../rules/base.xml.in.h:18 ../rules/evdev.xml.in.h:18 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "102/qwertz/komma/dode toetsen" -#: ../rules/base.xml.in.h:19 ../rules/evdev.xml.in.h:19 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "102/qwertz/komma/zonder dode toetsen" -#: ../rules/base.xml.in.h:20 ../rules/evdev.xml.in.h:20 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "102/qwertz/punt/dode toetsen" -#: ../rules/base.xml.in.h:21 ../rules/evdev.xml.in.h:21 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "102/qwertz/punt/zonder dode toetsen" -#: ../rules/base.xml.in.h:22 ../rules/evdev.xml.in.h:22 +#: ../rules/base.xml.in.h:22 +msgid "2" +msgstr "2" + +#: ../rules/base.xml.in.h:23 +msgid "4" +msgstr "4" + +#: ../rules/base.xml.in.h:24 +msgid "5" +msgstr "5" + +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:23 ../rules/evdev.xml.in.h:23 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:24 ../rules/evdev.xml.in.h:24 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech draadloos toetsenbord RFKB-23" -#: ../rules/base.xml.in.h:25 ../rules/evdev.xml.in.h:25 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI standaard" -#: ../rules/base.xml.in.h:26 ../rules/evdev.xml.in.h:26 -msgid "ATM/phone-style hexadecimal keypad" -msgstr "ATM/hexadecimaal toetsenbord, telefoonstijl" +#: ../rules/base.xml.in.h:29 +msgid "ATM/phone-style" +msgstr "ATM/telefoonstijl" -#: ../rules/base.xml.in.h:27 ../rules/evdev.xml.in.h:27 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:28 ../rules/evdev.xml.in.h:28 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:29 ../rules/evdev.xml.in.h:29 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:30 ../rules/evdev.xml.in.h:30 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Acer laptop" -# toevoegen/toekennen -#: ../rules/base.xml.in.h:31 ../rules/evdev.xml.in.h:31 -msgid "Add the EuroSign to the 2 key." -msgstr "Het Euro-teken toevoegen aan de 2-toets." - -# toevoegen/toekennen -#: ../rules/base.xml.in.h:32 ../rules/evdev.xml.in.h:32 -msgid "Add the EuroSign to the 4 key." -msgstr "Het Euro-teken toevoegen aan de 4-toets." - -#: ../rules/base.xml.in.h:33 ../rules/evdev.xml.in.h:33 -msgid "Add the EuroSign to the 5 key." -msgstr "Het Euro-teken toevoegen aan de 5-toets." +#: ../rules/base.xml.in.h:34 +msgid "Add the standard behavior to Menu key" +msgstr "Het standaard gedrag toevoegen aan de Menu-toets" -#: ../rules/base.xml.in.h:34 ../rules/evdev.xml.in.h:34 -msgid "Add the EuroSign to the E key." -msgstr "Het Euro-teken toevoegen aan de E-toets." - -#: ../rules/base.xml.in.h:35 ../rules/evdev.xml.in.h:35 -msgid "Add the standard behavior to Menu key." -msgstr "Het standaard gedrag toevoegen aan Menu-toets." +#: ../rules/base.xml.in.h:35 +msgid "Adding Esperanto circumflexes (supersigno)" +msgstr "Esperanto circonflexes toevoegen (supersigno)" # op afbeelden/aan toekennen -#: ../rules/base.xml.in.h:36 ../rules/evdev.xml.in.h:36 -msgid "Adding the EuroSign to certain keys" +#: ../rules/base.xml.in.h:36 +msgid "Adding EuroSign to certain keys" msgstr "Het Euro-teken aan bepaalde toetsen toevoegen" -#: ../rules/base.xml.in.h:37 ../rules/evdev.xml.in.h:37 +#: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" msgstr "Advance Scorpius KI" -#: ../rules/base.xml.in.h:38 ../rules/evdev.xml.in.h:38 +#: ../rules/base.xml.in.h:38 msgid "Afg" msgstr "Afg" -#: ../rules/base.xml.in.h:39 ../rules/evdev.xml.in.h:39 +#: ../rules/base.xml.in.h:39 msgid "Afghanistan" msgstr "Afghanistan" -#: ../rules/base.xml.in.h:40 ../rules/evdev.xml.in.h:40 +#: ../rules/base.xml.in.h:40 msgid "Akan" msgstr "Akaans" -#: ../rules/base.xml.in.h:41 ../rules/evdev.xml.in.h:41 +#: ../rules/base.xml.in.h:41 msgid "Alb" msgstr "Alb" -#: ../rules/base.xml.in.h:42 ../rules/evdev.xml.in.h:42 +#: ../rules/base.xml.in.h:42 msgid "Albania" msgstr "Albanië" -#: ../rules/base.xml.in.h:43 ../rules/evdev.xml.in.h:43 -msgid "Alt and Meta are on the Alt keys." -msgstr "Alt en Meta zijn op de Alt-toetsen." +#: ../rules/base.xml.in.h:43 +msgid "Alt and Meta are on Alt keys" +msgstr "Alt en Meta zitten op de Alt-toetsen" + +# wordt afgebeeld op/zit op +# zit op is veel korter en is ook duidelijker +#: ../rules/base.xml.in.h:44 +msgid "Alt is mapped to Right Win, Super to Menu" +msgstr "Alt zit op de rechter Win-toets, Super op de Menu-toets" -#: ../rules/base.xml.in.h:44 ../rules/evdev.xml.in.h:44 -msgid "Alt is mapped to the right Win-key and Super to Menu." -msgstr "Alt wordt afgebeeld op de rechter Win-toets en Super op Menu." +#: ../rules/base.xml.in.h:45 +msgid "Alt+CapsLock" +msgstr "Alt+CapsLock" -#: ../rules/base.xml.in.h:45 ../rules/evdev.xml.in.h:45 -msgid "Alt+CapsLock changes layout." -msgstr "Alt+CapsLock verandert de indeling." +#: ../rules/base.xml.in.h:46 +msgid "Alt+Ctrl" +msgstr "Alt+Ctrl" -#: ../rules/base.xml.in.h:46 ../rules/evdev.xml.in.h:46 -msgid "Alt+Ctrl change layout." -msgstr "Alt+Ctrl verandert de indeling." +#: ../rules/base.xml.in.h:47 +msgid "Alt+Shift" +msgstr "Alt+Shift" -#: ../rules/base.xml.in.h:47 ../rules/evdev.xml.in.h:47 -msgid "Alt+Shift change layout." -msgstr "Alt+Shift verandert de indeling." +#: ../rules/base.xml.in.h:48 +msgid "Alt+Space" +msgstr "Alt+Spatie" -#: ../rules/base.xml.in.h:48 ../rules/evdev.xml.in.h:48 +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:49 ../rules/evdev.xml.in.h:49 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Alt/Win-toets gedrag" -#: ../rules/base.xml.in.h:50 ../rules/evdev.xml.in.h:50 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "Alternatief" -#: ../rules/base.xml.in.h:51 ../rules/evdev.xml.in.h:51 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "Alternatief oosters" -#: ../rules/base.xml.in.h:52 ../rules/evdev.xml.in.h:52 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "Alternatief fonetisch" -#: ../rules/base.xml.in.h:53 ../rules/evdev.xml.in.h:53 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "Alternatief internationaal (voormalig us_intl)" -#: ../rules/base.xml.in.h:54 ../rules/evdev.xml.in.h:54 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "Alternatief, Sun-dode toetsen" -#: ../rules/base.xml.in.h:55 ../rules/evdev.xml.in.h:55 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "Alternatief, zonder dode toetsen" -#: ../rules/base.xml.in.h:56 ../rules/evdev.xml.in.h:56 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "Alternatief, enkel latin-9" -#: ../rules/base.xml.in.h:57 ../rules/evdev.xml.in.h:57 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "And" -#: ../rules/base.xml.in.h:58 ../rules/evdev.xml.in.h:58 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Andorra" -#: ../rules/base.xml.in.h:59 ../rules/evdev.xml.in.h:59 +# Beide/Willekeurige/Een van de/Een/Elke +#: ../rules/base.xml.in.h:60 +msgid "Any Alt key" +msgstr "Elke Alt-toets" + +#: ../rules/base.xml.in.h:61 +msgid "Any Win key" +msgstr "Elke Win-toets" + +# Beide Win-toetsen wisselen de indeling gedurende het indrukken.< +# gedurende het indrukken/ingedrukt houden (vrij vertaald) +#: ../rules/base.xml.in.h:62 +msgid "Any Win key (while pressed)" +msgstr "Elke Win-toets (ingedrukt houden)" + +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Apostrof (') variant" -#: ../rules/base.xml.in.h:60 ../rules/evdev.xml.in.h:60 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:61 ../rules/evdev.xml.in.h:61 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Apple laptop" -#: ../rules/base.xml.in.h:62 ../rules/evdev.xml.in.h:62 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ara" -#: ../rules/base.xml.in.h:63 ../rules/evdev.xml.in.h:63 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Arabisch" -#: ../rules/base.xml.in.h:64 ../rules/evdev.xml.in.h:64 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Arm" -#: ../rules/base.xml.in.h:65 ../rules/evdev.xml.in.h:65 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "Armenië" -#: ../rules/base.xml.in.h:66 ../rules/evdev.xml.in.h:66 +#: ../rules/base.xml.in.h:70 msgid "Asturian variant with bottom-dot H and bottom-dot L" msgstr "Asturische variant met onder-punt H en onder-punt L" -#: ../rules/base.xml.in.h:67 ../rules/evdev.xml.in.h:67 +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Asus laptop" -#: ../rules/base.xml.in.h:68 ../rules/evdev.xml.in.h:68 +# "Ctrl-toets zit linksonder" +#: ../rules/base.xml.in.h:72 +msgid "At bottom left" +msgstr "Linksonder" + +# Ctrl-toets links van ‘A’ +#: ../rules/base.xml.in.h:73 +msgid "At left of 'A'" +msgstr "Links van de ‘A’" + +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Aze" -#: ../rules/base.xml.in.h:69 ../rules/evdev.xml.in.h:69 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Azerbeidzjan" -#: ../rules/base.xml.in.h:70 ../rules/evdev.xml.in.h:70 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 draadloos internettoetsenbord" -#: ../rules/base.xml.in.h:71 ../rules/evdev.xml.in.h:71 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:72 ../rules/evdev.xml.in.h:72 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF multimedia" -#: ../rules/base.xml.in.h:73 ../rules/evdev.xml.in.h:73 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:74 ../rules/evdev.xml.in.h:74 +#: ../rules/base.xml.in.h:80 msgid "BTC 6301URF" msgstr "BTC 6301URF" -#: ../rules/base.xml.in.h:75 ../rules/evdev.xml.in.h:75 +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:76 ../rules/evdev.xml.in.h:76 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:77 ../rules/evdev.xml.in.h:77 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:78 ../rules/evdev.xml.in.h:78 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:79 ../rules/evdev.xml.in.h:79 +#: ../rules/base.xml.in.h:85 +msgid "BTC 9116U Mini Wireless Internet and Gaming" +msgstr "BTC 9116U Mini Wireless Internet en Gaming" + +#: ../rules/base.xml.in.h:86 msgid "Baltic+" msgstr "Baltisch+" -#: ../rules/base.xml.in.h:80 ../rules/evdev.xml.in.h:80 +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Ban" -#: ../rules/base.xml.in.h:81 ../rules/evdev.xml.in.h:81 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Bangladesh" -#: ../rules/base.xml.in.h:82 ../rules/evdev.xml.in.h:82 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Bashkiriaans" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Wit" -#: ../rules/base.xml.in.h:83 ../rules/evdev.xml.in.h:83 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Wit-Rusland" -#: ../rules/base.xml.in.h:84 ../rules/evdev.xml.in.h:84 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "België" -#: ../rules/base.xml.in.h:85 ../rules/evdev.xml.in.h:85 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:86 ../rules/evdev.xml.in.h:86 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:87 ../rules/evdev.xml.in.h:87 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:88 ../rules/evdev.xml.in.h:88 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengaals" -#: ../rules/base.xml.in.h:89 ../rules/evdev.xml.in.h:89 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengaals Probhat" -#: ../rules/base.xml.in.h:90 ../rules/evdev.xml.in.h:90 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomisch, Dvorak wijze" -#: ../rules/base.xml.in.h:91 ../rules/evdev.xml.in.h:91 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomisch, Dvorak wijze, enkel latin-9" -#: ../rules/base.xml.in.h:92 ../rules/evdev.xml.in.h:92 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:93 ../rules/evdev.xml.in.h:93 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:94 ../rules/evdev.xml.in.h:94 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:95 ../rules/evdev.xml.in.h:95 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Bijbels Hebreeuws (Tiro)" -#: ../rules/base.xml.in.h:96 ../rules/evdev.xml.in.h:96 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:97 ../rules/evdev.xml.in.h:97 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:98 ../rules/evdev.xml.in.h:98 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnië-Herzegovina" # verandert/wijzigt hier beter dan veranderen/wijzigen -#: ../rules/base.xml.in.h:99 ../rules/evdev.xml.in.h:99 -msgid "Both Alt keys together change layout." -msgstr "Beide Alt-toetsen samen verandert de indeling." - -#: ../rules/base.xml.in.h:100 ../rules/evdev.xml.in.h:100 -msgid "Both Ctrl keys together change layout." -msgstr "Beide Ctrl-toetsen samen verandert de indeling." +# "Beide Alt-toetsen samen verandert de groep." +# +# tezamen/samen/tegelijk +#: ../rules/base.xml.in.h:107 +msgid "Both Alt keys together" +msgstr "Beide Alt-toetsen samen" -#: ../rules/base.xml.in.h:101 ../rules/evdev.xml.in.h:101 -msgid "Both Shift keys together change layout." -msgstr "Beide Shift-toetsen samen verandert de indeling." +#: ../rules/base.xml.in.h:108 +msgid "Both Ctrl keys together" +msgstr "Beide Ctrl-toetsen samen" -#: ../rules/base.xml.in.h:102 ../rules/evdev.xml.in.h:102 -msgid "Both Win-keys switch layout while pressed." -msgstr "Beide Win-toetsen wisselen de indeling gedurende het indrukken." +#: ../rules/base.xml.in.h:109 +msgid "Both Shift keys together" +msgstr "Beide Shift-toetsen samen" -#: ../rules/base.xml.in.h:103 ../rules/evdev.xml.in.h:103 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:104 ../rules/evdev.xml.in.h:104 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:105 ../rules/evdev.xml.in.h:105 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brazilië" -#: ../rules/base.xml.in.h:106 ../rules/evdev.xml.in.h:106 -msgid "Brazilian ABNT2" -msgstr "Braziliaans ABNT2" +#: ../rules/base.xml.in.h:113 +msgid "Breton" +msgstr "Bretons" -#: ../rules/base.xml.in.h:107 ../rules/evdev.xml.in.h:107 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:108 ../rules/evdev.xml.in.h:108 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother internet toetsenbord" -#: ../rules/base.xml.in.h:109 ../rules/evdev.xml.in.h:109 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:110 ../rules/evdev.xml.in.h:110 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarije" -#: ../rules/base.xml.in.h:111 ../rules/evdev.xml.in.h:111 +#: ../rules/base.xml.in.h:118 +msgid "CRULP" +msgstr "CRULP" + +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambodja" -#: ../rules/base.xml.in.h:112 ../rules/evdev.xml.in.h:112 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:113 ../rules/evdev.xml.in.h:113 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Canada" -#: ../rules/base.xml.in.h:114 ../rules/evdev.xml.in.h:114 -msgid "Caps Lock is Compose." -msgstr "Caps Lock is samensteltoets." +#: ../rules/base.xml.in.h:122 +msgid "Caps Lock" +msgstr "Caps Lock" -#: ../rules/base.xml.in.h:115 ../rules/evdev.xml.in.h:115 -msgid "CapsLock LED shows alternative layout." -msgstr "CapsLock-lampje toont de alternatieve indeling." +#: ../rules/base.xml.in.h:123 +msgid "CapsLock" +msgstr "CapsLock" -#: ../rules/base.xml.in.h:116 ../rules/evdev.xml.in.h:116 -msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock." -msgstr "CapsLock werkt als Shift met blokkering, Shift heft CapsLock tijdelijk op." +# CapsLock wisselt naar de eerste indeling, Shift+CapsLock wisselt naar de laatste indeling +#: ../rules/base.xml.in.h:124 +msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" +msgstr "CapsLock (naar eerste indeling), Shift+CapsLock (naar laatste indeling)" -#: ../rules/base.xml.in.h:117 ../rules/evdev.xml.in.h:117 -msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock." -msgstr "CapsLock werkt als Shift met blokkering. Shift heft CapsLock niet op." +#: ../rules/base.xml.in.h:125 +msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" +msgstr "CapsLock (ingedrukt houden), Alt+CapsLock geeft de oorspronkelijke capslock actie" -#: ../rules/base.xml.in.h:118 ../rules/evdev.xml.in.h:118 -msgid "CapsLock just locks the Shift modifier." -msgstr "CapsLock blokkeert slechts de Shift-toets." +#: ../rules/base.xml.in.h:126 +msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" +msgstr "CapsLock werkt als Shift met blokkering, Shift heft CapsLock tijdelijk op" -#: ../rules/base.xml.in.h:119 ../rules/evdev.xml.in.h:119 -msgid "CapsLock key behavior" -msgstr "CapsLock-toets gedrag" +#: ../rules/base.xml.in.h:127 +msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" +msgstr "CapsLock werkt als Shift met blokkering. Shift heft CapsLock niet op" -#: ../rules/base.xml.in.h:120 ../rules/evdev.xml.in.h:120 -msgid "CapsLock key changes layout." -msgstr "CapsLock-toets verandert de indeling." +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock is uitgezet" -#: ../rules/base.xml.in.h:121 ../rules/evdev.xml.in.h:121 -msgid "CapsLock switch to first layout, Shift+CapsLock switch to last layout." -msgstr "CapsLock wisselt naar de eerste indeling, Shift+CapsLock wisselt naar de laatste indeling." +#: ../rules/base.xml.in.h:129 +msgid "CapsLock key behavior" +msgstr "CapsLock-toets gedrag" -#: ../rules/base.xml.in.h:122 ../rules/evdev.xml.in.h:122 -msgid "CapsLock toggles Shift so all keys are affected." -msgstr "CapsLock wisselt Shift op alle toetsen." +#: ../rules/base.xml.in.h:130 +msgid "CapsLock toggles Shift so all keys are affected" +msgstr "CapsLock wisselt Shift op alle toetsen" -# werkt alleen op de alfabetische toetsen/ +# heeft alleen effect op/werkt alleen op/beinvloedt alleen ~ +# de alfabetische toetsen/ # bepaalt hoofdletters/kleine letters bij alfabetische tekens.< -#: ../rules/base.xml.in.h:123 ../rules/evdev.xml.in.h:123 -msgid "CapsLock toggles normal capitalization of alphabetic characters." -msgstr "CapsLock wisselt Shift alleen op de alfabetische toetsen." +#: ../rules/base.xml.in.h:131 +msgid "CapsLock toggles normal capitalization of alphabetic characters" +msgstr "CapsLock beïnvloedt alleen de alfabetische toetsen" -#: ../rules/base.xml.in.h:124 ../rules/evdev.xml.in.h:124 -msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock." -msgstr "CapsLock gebruikt interne conversie naar hoofdletters. Shift heft CapsLock tijdelijk op." +#: ../rules/base.xml.in.h:132 +msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" +msgstr "CapsLock gebruikt interne conversie naar hoofdletters. Shift heft CapsLock tijdelijk op" -#: ../rules/base.xml.in.h:125 ../rules/evdev.xml.in.h:125 -msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock." -msgstr "CapsLock gebruikt interne conversie naar hoofdletters. Shift heft CapsLock niet op." +#: ../rules/base.xml.in.h:133 +msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" +msgstr "CapsLock gebruikt interne conversie naar hoofdletters. Shift heft CapsLock niet op" -#: ../rules/base.xml.in.h:126 ../rules/evdev.xml.in.h:126 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Catalaanse variant met midden-punt L" -#: ../rules/base.xml.in.h:127 ../rules/evdev.xml.in.h:127 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilla" -#: ../rules/base.xml.in.h:128 ../rules/evdev.xml.in.h:128 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:129 ../rules/evdev.xml.in.h:129 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:130 ../rules/evdev.xml.in.h:130 +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:131 ../rules/evdev.xml.in.h:131 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternatieve optie)" -#: ../rules/base.xml.in.h:132 ../rules/evdev.xml.in.h:132 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:133 ../rules/evdev.xml.in.h:133 +#: ../rules/base.xml.in.h:142 +msgid "Cherry CyMotion Expert" +msgstr "Cherry CyMotion Master Expert" + +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:134 ../rules/evdev.xml.in.h:134 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:135 ../rules/evdev.xml.in.h:135 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony internet toetsenbord" -#: ../rules/base.xml.in.h:136 ../rules/evdev.xml.in.h:136 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:137 ../rules/evdev.xml.in.h:137 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:138 ../rules/evdev.xml.in.h:138 +#: ../rules/base.xml.in.h:148 +msgid "Chicony KU-0420" +msgstr "Chicony KU-0420" + +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "China" -#: ../rules/base.xml.in.h:139 ../rules/evdev.xml.in.h:139 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Tsjoevasjisch" -#: ../rules/base.xml.in.h:140 ../rules/evdev.xml.in.h:140 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Tsjoevasjisch Latijns" -#: ../rules/base.xml.in.h:141 ../rules/evdev.xml.in.h:141 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klassiek" -#: ../rules/base.xml.in.h:142 ../rules/evdev.xml.in.h:142 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak klassiek" -#: ../rules/base.xml.in.h:143 ../rules/evdev.xml.in.h:143 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:144 ../rules/evdev.xml.in.h:144 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:145 ../rules/evdev.xml.in.h:145 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:146 ../rules/evdev.xml.in.h:146 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access toetsenbord" -#: ../rules/base.xml.in.h:147 ../rules/evdev.xml.in.h:147 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq internet toetsenbord (13 toetsen)" -#: ../rules/base.xml.in.h:148 ../rules/evdev.xml.in.h:148 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq internet toetsenbord (18 toetsen)" -#: ../rules/base.xml.in.h:149 ../rules/evdev.xml.in.h:149 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq internet toetsenbord (7 toetsen)" -#: ../rules/base.xml.in.h:150 ../rules/evdev.xml.in.h:150 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq toetsenbord" -#: ../rules/base.xml.in.h:151 ../rules/evdev.xml.in.h:151 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Samensteltoets positie" -#: ../rules/base.xml.in.h:152 ../rules/evdev.xml.in.h:152 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Congo, Democratisch republiek van" -#: ../rules/base.xml.in.h:153 ../rules/evdev.xml.in.h:153 -msgid "Control is mapped to the Win-keys (and the usual Ctrl keys)." -msgstr "Ctrl wordt afgebeeld op de Win-toetsen (en de gebruikelijke Ctrl-toetsen)." +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Ctrl + Alt + Backspace" -#: ../rules/base.xml.in.h:154 ../rules/evdev.xml.in.h:154 -msgid "Croatia" -msgstr "Kroatië" +#: ../rules/base.xml.in.h:165 +msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" +msgstr "Ctrl zit op de Alt-toetsen, Alt zit op de Win-toetsen" + +#: ../rules/base.xml.in.h:166 +msgid "Control is mapped to Win keys (and the usual Ctrl keys)" +msgstr "Ctrl zit op de Win-toetsen (en de gebruikelijke Ctrl-toetsen)" + +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +# Krim-Tataars of Krim-Turks +# http://nl.wikipedia.org/wiki/Krim-Tataars +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "Krim-Tataars (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:155 ../rules/evdev.xml.in.h:155 -msgid "Ctrl key at bottom left" -msgstr "Ctrl-toets zit linksonder" +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "Krim-Tataars (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:156 ../rules/evdev.xml.in.h:156 -msgid "Ctrl key at left of 'A'" -msgstr "Ctrl-toets links van ‘A’" +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "Krim-Tataars (Turks Alt-Q)" -#: ../rules/base.xml.in.h:157 ../rules/evdev.xml.in.h:157 +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "Krim-Tataars (Turks F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "Krim-Tataars (Turks Q)" + +#: ../rules/base.xml.in.h:173 +msgid "Croatia" +msgstr "Kroatië" + +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Ctrl-toetspositie" -#: ../rules/base.xml.in.h:158 ../rules/evdev.xml.in.h:158 -msgid "Ctrl+Shift change layout." -msgstr "Ctrl+Shift verandert de indeling." +#: ../rules/base.xml.in.h:175 +msgid "Ctrl+Shift" +msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:159 ../rules/evdev.xml.in.h:159 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Cyrillisch" # Guillemets of ook quillemets zijn Franse aanhalingstekens. # Dit is "Nederlands" en dit is de «Franse manier» van aanhalen. -#: ../rules/base.xml.in.h:160 ../rules/evdev.xml.in.h:160 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Cyrillisch met Franse aanhalingstekens" # verwisseld/gewisseld/omgewisseld -#: ../rules/base.xml.in.h:161 ../rules/evdev.xml.in.h:161 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Cyrillisch, Z en ZHE omgewisseld" -#: ../rules/base.xml.in.h:162 ../rules/evdev.xml.in.h:162 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Tsj" -#: ../rules/base.xml.in.h:163 ../rules/evdev.xml.in.h:163 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Tsjechië" -#: ../rules/base.xml.in.h:164 ../rules/evdev.xml.in.h:164 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:165 ../rules/evdev.xml.in.h:165 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:166 ../rules/evdev.xml.in.h:166 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:167 ../rules/evdev.xml.in.h:167 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Dood acutus" -#: ../rules/base.xml.in.h:168 ../rules/evdev.xml.in.h:168 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Dood gravis-acutus" # dubbelop numeriek/cijfer -#: ../rules/base.xml.in.h:169 ../rules/evdev.xml.in.h:169 -msgid "Default numeric keypad keys." -msgstr "Standaard cijferblok-toetsen." +#: ../rules/base.xml.in.h:187 +msgid "Default numeric keypad keys" +msgstr "Standaard cijferblok-toetsen" -#: ../rules/base.xml.in.h:170 ../rules/evdev.xml.in.h:170 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:171 ../rules/evdev.xml.in.h:171 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-toetsen PC" -#: ../rules/base.xml.in.h:172 ../rules/evdev.xml.in.h:172 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Dell Laptop/notebook Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:173 ../rules/evdev.xml.in.h:173 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Dell Laptop/notebook Precision M series" -#: ../rules/base.xml.in.h:174 ../rules/evdev.xml.in.h:174 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Dell Latitude laptopserie" -#: ../rules/base.xml.in.h:175 ../rules/evdev.xml.in.h:175 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:176 ../rules/evdev.xml.in.h:176 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:177 ../rules/evdev.xml.in.h:177 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:178 ../rules/evdev.xml.in.h:178 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB multimediatoetsenbord" -#: ../rules/base.xml.in.h:179 ../rules/evdev.xml.in.h:179 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Denemarken" -#: ../rules/base.xml.in.h:180 ../rules/evdev.xml.in.h:180 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:181 ../rules/evdev.xml.in.h:181 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop toetsenbord" -#: ../rules/base.xml.in.h:182 ../rules/evdev.xml.in.h:182 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801 / 9802 serie" -#: ../rules/base.xml.in.h:183 ../rules/evdev.xml.in.h:183 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" # interpunctie/leestekens # het gaat hier waarschijnlijk over de indeling, waar het vraagteken en de # puntkomma etc. staan. -#: ../rules/base.xml.in.h:184 ../rules/evdev.xml.in.h:184 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (UK-leestekens)" -#: ../rules/base.xml.in.h:185 ../rules/evdev.xml.in.h:185 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak internationaal" -#: ../rules/base.xml.in.h:186 ../rules/evdev.xml.in.h:186 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorak, Poolse aanhalingstekens op toets \"1/!\"" +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Dvorak, Poolse aanhalingstekens op toets 1" -#: ../rules/base.xml.in.h:187 ../rules/evdev.xml.in.h:187 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, Poolse aanhalingstekens op aanhalingstekentoets" +#: ../rules/base.xml.in.h:206 +msgid "E" +msgstr "E" + # oostelijk/oosters -#: ../rules/base.xml.in.h:188 ../rules/evdev.xml.in.h:188 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Oosters" -#: ../rules/base.xml.in.h:189 ../rules/evdev.xml.in.h:189 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Geen dode toetsen" -#: ../rules/base.xml.in.h:190 ../rules/evdev.xml.in.h:190 +#: ../rules/base.xml.in.h:209 +msgid "Enable extra typographic characters" +msgstr "Extra typografische tekens aanzetten" + +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "Engels" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:191 ../rules/evdev.xml.in.h:191 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enter op cijferblok" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:192 ../rules/evdev.xml.in.h:192 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomisch" -#: ../rules/base.xml.in.h:193 ../rules/evdev.xml.in.h:193 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:194 ../rules/evdev.xml.in.h:194 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:195 ../rules/evdev.xml.in.h:195 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:196 ../rules/evdev.xml.in.h:196 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estland" -#: ../rules/base.xml.in.h:197 ../rules/evdev.xml.in.h:197 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:198 ../rules/evdev.xml.in.h:198 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Ethiopië" -#: ../rules/base.xml.in.h:199 ../rules/evdev.xml.in.h:199 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-beheerd toetsenbord" -#: ../rules/base.xml.in.h:200 ../rules/evdev.xml.in.h:200 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:201 ../rules/evdev.xml.in.h:201 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:202 ../rules/evdev.xml.in.h:202 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Uitgebreid" -#: ../rules/base.xml.in.h:203 ../rules/evdev.xml.in.h:203 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "Uitgebreid - Win-toetsen" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Brede backslash" -#: ../rules/base.xml.in.h:204 ../rules/evdev.xml.in.h:204 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-letter (F) variant" -#: ../rules/base.xml.in.h:205 ../rules/evdev.xml.in.h:205 +#: ../rules/base.xml.in.h:228 +msgid "FL90" +msgstr "FL90" + +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:206 ../rules/evdev.xml.in.h:206 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Faeröer-eilanden" -#: ../rules/base.xml.in.h:207 ../rules/evdev.xml.in.h:207 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:208 ../rules/evdev.xml.in.h:208 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finland" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:211 ../rules/evdev.xml.in.h:211 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "Vier-niveaus toets met abstracte scheidingstekens" -#: ../rules/base.xml.in.h:212 ../rules/evdev.xml.in.h:212 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "Vier-niveaus toets met komma" -#: ../rules/base.xml.in.h:213 ../rules/evdev.xml.in.h:213 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "Vier-niveaus toets met punt" -#: ../rules/base.xml.in.h:214 ../rules/evdev.xml.in.h:214 +#: ../rules/base.xml.in.h:238 +msgid "Four-level key with dot, latin-9 restriction" +msgstr "Vier-niveaus toets met punt, latin-9 restrictie" + +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "Vier-niveaus toets met momayyez" -#: ../rules/base.xml.in.h:215 ../rules/evdev.xml.in.h:215 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:216 ../rules/evdev.xml.in.h:216 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Frankrijk" -#: ../rules/base.xml.in.h:217 ../rules/evdev.xml.in.h:217 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Frans" -#: ../rules/base.xml.in.h:218 ../rules/evdev.xml.in.h:218 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Frans (Macintosh)" -#: ../rules/base.xml.in.h:219 ../rules/evdev.xml.in.h:219 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Frans (oud)" -#: ../rules/base.xml.in.h:220 ../rules/evdev.xml.in.h:220 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Frans-Dvorak" -#: ../rules/base.xml.in.h:221 ../rules/evdev.xml.in.h:221 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Frans, Sun-dode toetsen" -#: ../rules/base.xml.in.h:222 ../rules/evdev.xml.in.h:222 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Frans, zonder dode toetsen" -#: ../rules/base.xml.in.h:223 ../rules/evdev.xml.in.h:223 -msgid "Fujitsu-Siemens Computers AMILO A1667G laptop" -msgstr "Fujitsu-Siemens Computers AMILO A1667G laptop" +#: ../rules/base.xml.in.h:248 +msgid "Fujitsu-Siemens Computers AMILO laptop" +msgstr "Fujitsu-Siemens Computers AMILO laptop" -#: ../rules/base.xml.in.h:224 ../rules/evdev.xml.in.h:224 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:225 ../rules/evdev.xml.in.h:225 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:226 ../rules/evdev.xml.in.h:226 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:227 ../rules/evdev.xml.in.h:227 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Algemeen 101-toetsen PC" -#: ../rules/base.xml.in.h:228 ../rules/evdev.xml.in.h:228 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Algemeen 102-toetsen (internationaal) PC" -#: ../rules/base.xml.in.h:229 ../rules/evdev.xml.in.h:229 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Algemeen 104-toetsen PC" -#: ../rules/base.xml.in.h:230 ../rules/evdev.xml.in.h:230 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Algemeen 105-toetsen (internationaal) PC" -#: ../rules/base.xml.in.h:231 ../rules/evdev.xml.in.h:231 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:232 ../rules/evdev.xml.in.h:232 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM toetsenbord KWD-910" -#: ../rules/base.xml.in.h:233 ../rules/evdev.xml.in.h:233 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:234 ../rules/evdev.xml.in.h:234 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:235 ../rules/evdev.xml.in.h:235 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:236 ../rules/evdev.xml.in.h:236 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgië" -#: ../rules/base.xml.in.h:237 ../rules/evdev.xml.in.h:237 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgisch" -#: ../rules/base.xml.in.h:238 ../rules/evdev.xml.in.h:238 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgisch AZERTY Tskapo" -#: ../rules/base.xml.in.h:239 ../rules/evdev.xml.in.h:239 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Duits (Macintosh)" -#: ../rules/base.xml.in.h:240 ../rules/evdev.xml.in.h:240 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Duits, Sun-dode toetsen" -#: ../rules/base.xml.in.h:241 ../rules/evdev.xml.in.h:241 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Duits, zonder dode toetsen" -#: ../rules/base.xml.in.h:242 ../rules/evdev.xml.in.h:242 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Duitsland" -#: ../rules/base.xml.in.h:243 ../rules/evdev.xml.in.h:243 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:244 ../rules/evdev.xml.in.h:244 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:245 ../rules/evdev.xml.in.h:245 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gri" -#: ../rules/base.xml.in.h:246 ../rules/evdev.xml.in.h:246 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Griekenland" -#: ../rules/base.xml.in.h:247 ../rules/evdev.xml.in.h:247 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Groepswissel met de toets vermenigvuldigen/delen" -#: ../rules/base.xml.in.h:248 ../rules/evdev.xml.in.h:248 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:249 ../rules/evdev.xml.in.h:249 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:250 ../rules/evdev.xml.in.h:250 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujarati" -#: ../rules/base.xml.in.h:251 ../rules/evdev.xml.in.h:251 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhi" -#: ../rules/base.xml.in.h:252 ../rules/evdev.xml.in.h:252 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" # het zal wel een merk zijn -#: ../rules/base.xml.in.h:253 ../rules/evdev.xml.in.h:253 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:254 ../rules/evdev.xml.in.h:254 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking toetsenbord" -#: ../rules/base.xml.in.h:255 ../rules/evdev.xml.in.h:255 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking toetsenbord voor Mac" -#: ../rules/base.xml.in.h:256 ../rules/evdev.xml.in.h:256 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:257 ../rules/evdev.xml.in.h:257 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard internet toetsenbord" -#: ../rules/base.xml.in.h:258 ../rules/evdev.xml.in.h:258 -msgid "Hewlett-Packard Internet Keyboard 5181" -msgstr "Hewlett-Packard internet toetsenbord 5181" - -#: ../rules/base.xml.in.h:259 ../rules/evdev.xml.in.h:259 -msgid "Hewlett-Packard Internet Keyboard 5185" -msgstr "Hewlett-Packard internet toetsenbord 5185" - -#: ../rules/base.xml.in.h:260 ../rules/evdev.xml.in.h:260 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:261 ../rules/evdev.xml.in.h:261 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:262 ../rules/evdev.xml.in.h:262 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:263 ../rules/evdev.xml.in.h:263 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:264 ../rules/evdev.xml.in.h:264 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:265 ../rules/evdev.xml.in.h:265 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:266 ../rules/evdev.xml.in.h:266 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:267 ../rules/evdev.xml.in.h:267 -msgid "Hewlett-Packard SK-2501 Multimedia Keyboard" -msgstr "Hewlett-Packard SK-2501 multimedia toetsenbord" +#: ../rules/base.xml.in.h:291 +msgid "Hewlett-Packard Pavilion dv5" +msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:268 ../rules/evdev.xml.in.h:268 -msgid "Hewlett-Packard SK-2505 Internet Keyboard" -msgstr "Hewlett-Packard SK-2505 internet toetsenbord" +#: ../rules/base.xml.in.h:292 +msgid "Hewlett-Packard SK-250x Multimedia Keyboard" +msgstr "Hewlett-Packard SK-250x multimedia toetsenbord" -#: ../rules/base.xml.in.h:269 ../rules/evdev.xml.in.h:269 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:270 ../rules/evdev.xml.in.h:270 +#: ../rules/base.xml.in.h:294 +msgid "Hexadecimal" +msgstr "Hexadecimaal" + +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi Bolnagri" +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Hindi Wx" + # gelijkklinkend/homofonetisch/homofonisch -#: ../rules/base.xml.in.h:271 ../rules/evdev.xml.in.h:271 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofonisch" -#: ../rules/base.xml.in.h:272 ../rules/evdev.xml.in.h:272 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" # Kro/Hrv -#: ../rules/base.xml.in.h:273 ../rules/evdev.xml.in.h:273 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:274 ../rules/evdev.xml.in.h:274 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hon" -#: ../rules/base.xml.in.h:275 ../rules/evdev.xml.in.h:275 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hongarije" -#: ../rules/base.xml.in.h:276 ../rules/evdev.xml.in.h:276 -msgid "Hyper is mapped to the Win-keys." -msgstr "Hyper wordt afgebeeld op de Win-toetsen." +#: ../rules/base.xml.in.h:302 +msgid "Hyper is mapped to Win-keys" +msgstr "Hyper zit op de Win-toetsen" -#: ../rules/base.xml.in.h:277 ../rules/evdev.xml.in.h:277 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:278 ../rules/evdev.xml.in.h:278 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:279 ../rules/evdev.xml.in.h:279 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:280 ../rules/evdev.xml.in.h:280 -msgid "IBM Rapid Access II (alternate option)" -msgstr "IBM Rapid Access II (alternatieve optie)" - -#: ../rules/base.xml.in.h:281 ../rules/evdev.xml.in.h:281 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:282 ../rules/evdev.xml.in.h:282 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:283 ../rules/evdev.xml.in.h:283 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:284 ../rules/evdev.xml.in.h:284 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:285 ../rules/evdev.xml.in.h:285 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:286 ../rules/evdev.xml.in.h:286 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO alternatief" -#: ../rules/base.xml.in.h:287 ../rules/evdev.xml.in.h:287 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "IJsland" -#: ../rules/base.xml.in.h:288 ../rules/evdev.xml.in.h:288 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:289 ../rules/evdev.xml.in.h:289 +# met/bijvoegen +# inactieve/dode/latente +#: ../rules/base.xml.in.h:314 +msgid "Include dead tilde" +msgstr "Met dode tilde" + +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:290 ../rules/evdev.xml.in.h:290 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "India" -#: ../rules/base.xml.in.h:291 ../rules/evdev.xml.in.h:291 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internationaal (AltGr dode toetsen)" -#: ../rules/base.xml.in.h:292 ../rules/evdev.xml.in.h:292 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internationaal (met dode toetsen)" -#: ../rules/base.xml.in.h:293 ../rules/evdev.xml.in.h:293 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:294 ../rules/evdev.xml.in.h:294 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:295 ../rules/evdev.xml.in.h:295 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:296 ../rules/evdev.xml.in.h:296 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Ierland" -#: ../rules/base.xml.in.h:297 ../rules/evdev.xml.in.h:297 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:298 ../rules/evdev.xml.in.h:298 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:299 ../rules/evdev.xml.in.h:299 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:300 ../rules/evdev.xml.in.h:300 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:301 ../rules/evdev.xml.in.h:301 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:302 ../rules/evdev.xml.in.h:302 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israël" -#: ../rules/base.xml.in.h:303 ../rules/evdev.xml.in.h:303 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:304 ../rules/evdev.xml.in.h:304 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italië" -#: ../rules/base.xml.in.h:305 ../rules/evdev.xml.in.h:305 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japan" -#: ../rules/base.xml.in.h:306 ../rules/evdev.xml.in.h:306 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx serie)" -#: ../rules/base.xml.in.h:307 ../rules/evdev.xml.in.h:307 -msgid "Japanese 106-key" -msgstr "Japans 106-toetsen" - -#: ../rules/base.xml.in.h:308 ../rules/evdev.xml.in.h:308 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Japanse toetsenbordopties" -#: ../rules/base.xml.in.h:309 ../rules/evdev.xml.in.h:309 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:310 ../rules/evdev.xml.in.h:310 +#: ../rules/base.xml.in.h:335 +msgid "Kalmyk" +msgstr "Kalmyk" + +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:311 ../rules/evdev.xml.in.h:311 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana Lock-toets is blokkerend" -#: ../rules/base.xml.in.h:312 ../rules/evdev.xml.in.h:312 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:313 ../rules/evdev.xml.in.h:313 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kasjoebiaans" -#: ../rules/base.xml.in.h:314 ../rules/evdev.xml.in.h:314 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" # de taal Kazachstaans -#: ../rules/base.xml.in.h:315 ../rules/evdev.xml.in.h:315 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazachstaans met Russisch" -#: ../rules/base.xml.in.h:316 ../rules/evdev.xml.in.h:316 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazachstan" -# nummerblok/ -#: ../rules/base.xml.in.h:317 ../rules/evdev.xml.in.h:317 -msgid "Keypad" -msgstr "Nummerblok" +# om zeep te helpen/af te breken/te stoppen/ +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "Toetscombinatie om de X-server af te breken" -#: ../rules/base.xml.in.h:318 ../rules/evdev.xml.in.h:318 -msgid "Keypad with unicode additions (arrows and math operators)" -msgstr "Cijferblok met unicode-aanvullingen (pijlen en wiskundige operatoren)" +# aan te zetten/te kiezen/te selecteren/te krijgen +# +# 'to choose' is hier een slechte woordkeuze IMO +#: ../rules/base.xml.in.h:344 +msgid "Key to choose 3rd level" +msgstr "De toets om het 3e niveau te krijgen" -#: ../rules/base.xml.in.h:319 ../rules/evdev.xml.in.h:319 -msgid "Keypad with unicode additions (arrows and math operators). Math operators on default level." -msgstr "Cijferblok met unicode-aanvullingen (pijlen en wiskundige operatoren). Wiskundige operatoren op het standaard niveau." +# wijzigen/veranderen +#: ../rules/base.xml.in.h:345 +msgid "Key(s) to change layout" +msgstr "De toets(en) om de indeling te veranderen" -#: ../rules/base.xml.in.h:320 ../rules/evdev.xml.in.h:320 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:321 ../rules/evdev.xml.in.h:321 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Kgz" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:322 ../rules/evdev.xml.in.h:322 -msgid "Kir" -msgstr "Kir" - -#: ../rules/base.xml.in.h:323 ../rules/evdev.xml.in.h:323 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:324 ../rules/evdev.xml.in.h:324 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:325 ../rules/evdev.xml.in.h:325 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Korea, Republiek" -#: ../rules/base.xml.in.h:326 ../rules/evdev.xml.in.h:326 -msgid "Korean 106-key" -msgstr "Koreaans 106-toetsen" - -#: ../rules/base.xml.in.h:327 ../rules/evdev.xml.in.h:327 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:328 ../rules/evdev.xml.in.h:328 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Koerdisch, (F)" -#: ../rules/base.xml.in.h:329 ../rules/evdev.xml.in.h:329 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Koerdisch, Arabisch-Latijns" -#: ../rules/base.xml.in.h:330 ../rules/evdev.xml.in.h:330 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Koerdisch, Latijns Alt-Q" -#: ../rules/base.xml.in.h:331 ../rules/evdev.xml.in.h:331 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Koerdisch, Latijns Q" -#: ../rules/base.xml.in.h:332 ../rules/evdev.xml.in.h:332 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgizië" -#: ../rules/base.xml.in.h:333 ../rules/evdev.xml.in.h:333 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:334 ../rules/evdev.xml.in.h:334 -msgid "LCtrl+LShift change layout." -msgstr "Linker Ctrl+Linker Shift verandert de indeling." - -#: ../rules/base.xml.in.h:335 ../rules/evdev.xml.in.h:335 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:336 ../rules/evdev.xml.in.h:336 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:337 ../rules/evdev.xml.in.h:337 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:338 ../rules/evdev.xml.in.h:338 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:339 ../rules/evdev.xml.in.h:339 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop/notebook Compaq (bijv. Armada) laptop toetsenbord" -#: ../rules/base.xml.in.h:340 ../rules/evdev.xml.in.h:340 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Laptop/notebook Compaq (bijv. Presario) internet toetsenbord" -#: ../rules/base.xml.in.h:341 ../rules/evdev.xml.in.h:341 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Laptop/notebook eMachines m68xx" -#: ../rules/base.xml.in.h:342 ../rules/evdev.xml.in.h:342 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latijns" -#: ../rules/base.xml.in.h:343 ../rules/evdev.xml.in.h:343 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latijns-Amerika" -#: ../rules/base.xml.in.h:344 ../rules/evdev.xml.in.h:344 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latijns-Unicode" -#: ../rules/base.xml.in.h:345 ../rules/evdev.xml.in.h:345 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latijns-Unicode qwerty" -#: ../rules/base.xml.in.h:346 ../rules/evdev.xml.in.h:346 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latijns qwerty" -#: ../rules/base.xml.in.h:347 ../rules/evdev.xml.in.h:347 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latijns-unicode" -#: ../rules/base.xml.in.h:348 ../rules/evdev.xml.in.h:348 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latijns-unicode qwerty" # Guillemets of ook quillemets zijn Franse aanhalingstekens. # Dit is "Nederlands" en dit is de «Franse manier» van aanhalen. -#: ../rules/base.xml.in.h:349 ../rules/evdev.xml.in.h:349 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latijns met Franse aanhalingstekens" -#: ../rules/base.xml.in.h:350 ../rules/evdev.xml.in.h:350 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Letland" -#: ../rules/base.xml.in.h:351 ../rules/evdev.xml.in.h:351 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:352 ../rules/evdev.xml.in.h:352 -msgid "Layout switching" -msgstr "Wisselen van indeling" +#: ../rules/base.xml.in.h:376 +msgid "Left Alt" +msgstr "Linker Alt-toets" -#: ../rules/base.xml.in.h:353 ../rules/evdev.xml.in.h:353 -msgid "Left Alt is swapped with left Win-key." -msgstr "De linker Alt-toets wordt omgewisseld met de linker Win-toets." +#: ../rules/base.xml.in.h:377 +msgid "Left Alt (while pressed)" +msgstr "Linker Alt-toets (ingedrukt houden)" -#: ../rules/base.xml.in.h:354 ../rules/evdev.xml.in.h:354 -msgid "Left Alt key changes layout." -msgstr "Linker Alt-toets verandert de indeling." +#: ../rules/base.xml.in.h:378 +msgid "Left Alt is swapped with Left Win" +msgstr "De linker Alt-toets en Win-toets worden gewisseld" -#: ../rules/base.xml.in.h:355 ../rules/evdev.xml.in.h:355 -msgid "Left Alt key switches layout while pressed." -msgstr "Linker Alt-toets wisselt de indeling gedurende het indrukken." +#: ../rules/base.xml.in.h:379 +msgid "Left Ctrl" +msgstr "Linker Ctrl-toets" -#: ../rules/base.xml.in.h:356 ../rules/evdev.xml.in.h:356 -msgid "Left Ctrl key changes layout." -msgstr "Linker Ctrl-toets verandert de indeling." +# -toets toevoegen? +#: ../rules/base.xml.in.h:380 +msgid "Left Ctrl+Left Shift" +msgstr "Linker Ctrl + linker Shift-toets" -#: ../rules/base.xml.in.h:357 ../rules/evdev.xml.in.h:357 -msgid "Left Shift key changes layout." -msgstr "Linker Shift-toets verandert de indeling." +#: ../rules/base.xml.in.h:381 +msgid "Left Shift" +msgstr "Linker Shift-toets" -#: ../rules/base.xml.in.h:358 ../rules/evdev.xml.in.h:358 -msgid "Left Win-key changes layout." -msgstr "Linker Win-toets verandert de indeling." +#: ../rules/base.xml.in.h:382 +msgid "Left Win" +msgstr "Linker Win-toets" -#: ../rules/base.xml.in.h:359 ../rules/evdev.xml.in.h:359 -msgid "Left Win-key is Compose." -msgstr "Linker Win-toets is samensteltoets." +# Linker Win-toets wisselt naar de eerste indeling, rechter Win/Menu-toets wisselt naar de laatste indeling +#: ../rules/base.xml.in.h:383 +msgid "Left Win (to first layout), Right Win/Menu (to last layout)" +msgstr "Linker Win-toets (naar de eerste indeling), rechter Win/Menu-toets (naar de laatste indeling)" -#: ../rules/base.xml.in.h:360 ../rules/evdev.xml.in.h:360 -msgid "Left Win-key switches layout while pressed." -msgstr "Linker Win-toets wisselt de indeling gedurende het indrukken." +#: ../rules/base.xml.in.h:384 +msgid "Left Win (while pressed)" +msgstr "Linker Win-toets (ingedrukt houden)" -#: ../rules/base.xml.in.h:361 ../rules/evdev.xml.in.h:361 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Linkshandig" -#: ../rules/base.xml.in.h:362 ../rules/evdev.xml.in.h:362 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Linkshandige Dvorak" -#: ../rules/base.xml.in.h:363 ../rules/evdev.xml.in.h:363 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Historisch" -#: ../rules/base.xml.in.h:364 ../rules/evdev.xml.in.h:364 -msgid "Legacy Wang 724 keypad" -msgstr "Historisch Wang 724 cijferblok" +#: ../rules/base.xml.in.h:388 +msgid "Legacy Wang 724" +msgstr "Historisch Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:366 ../rules/evdev.xml.in.h:366 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Historisch cijferblok met komma" -#: ../rules/base.xml.in.h:367 ../rules/evdev.xml.in.h:367 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Historisch cijferblok met punt" -#: ../rules/base.xml.in.h:368 ../rules/evdev.xml.in.h:368 -msgid "Legacy keypad" -msgstr "Historisch cijferblok" - -#: ../rules/base.xml.in.h:369 ../rules/evdev.xml.in.h:369 -msgid "Less-than/Greater-than is Compose." -msgstr "Groter dan/Kleiner dan is samensteltoets." +#: ../rules/base.xml.in.h:392 +msgid "Less-than/Greater-than" +msgstr "Groter dan/Kleiner dan" -#: ../rules/base.xml.in.h:370 ../rules/evdev.xml.in.h:370 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litouwen" -#: ../rules/base.xml.in.h:371 ../rules/evdev.xml.in.h:371 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access toetsenbord" -#: ../rules/base.xml.in.h:372 ../rules/evdev.xml.in.h:372 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:373 ../rules/evdev.xml.in.h:373 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternatieve optie)" -#: ../rules/base.xml.in.h:374 ../rules/evdev.xml.in.h:374 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:375 ../rules/evdev.xml.in.h:375 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:376 ../rules/evdev.xml.in.h:376 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:377 ../rules/evdev.xml.in.h:377 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optisch" -#: ../rules/base.xml.in.h:378 ../rules/evdev.xml.in.h:378 -msgid "Logitech Cordless Desktop Pro (alternate option2)" -msgstr "Logitech Cordless Desktop Pro (alternatieve optie2)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" +msgstr "Logitech Cordless Desktop Pro (alternatieve optie 2)" -#: ../rules/base.xml.in.h:379 ../rules/evdev.xml.in.h:379 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:380 ../rules/evdev.xml.in.h:380 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:381 ../rules/evdev.xml.in.h:381 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 extra toetsen via G15daemon" -#: ../rules/base.xml.in.h:382 ../rules/evdev.xml.in.h:382 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech algemeen toetsenbord" -#: ../rules/base.xml.in.h:383 ../rules/evdev.xml.in.h:383 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech internet 350 toetsenbord" -#: ../rules/base.xml.in.h:384 ../rules/evdev.xml.in.h:384 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech internet toetsenbord" -#: ../rules/base.xml.in.h:385 ../rules/evdev.xml.in.h:385 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator toetsenbord" -#: ../rules/base.xml.in.h:386 ../rules/evdev.xml.in.h:386 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite toetsenbord" -#: ../rules/base.xml.in.h:387 ../rules/evdev.xml.in.h:387 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop toetsenbord" -#: ../rules/base.xml.in.h:388 ../rules/evdev.xml.in.h:388 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X toetsenbord" -#: ../rules/base.xml.in.h:389 ../rules/evdev.xml.in.h:389 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge toetsenbord" -#: ../rules/base.xml.in.h:390 ../rules/evdev.xml.in.h:390 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo toetsenbord" -#: ../rules/base.xml.in.h:391 ../rules/evdev.xml.in.h:391 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:392 ../rules/evdev.xml.in.h:392 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch draadloos toetsenbord (model Y-RB6)" -#: ../rules/base.xml.in.h:393 ../rules/evdev.xml.in.h:393 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator toetsenbord SE" -#: ../rules/base.xml.in.h:394 ../rules/evdev.xml.in.h:394 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator toetsenbord SE (USB)" -#: ../rules/base.xml.in.h:395 ../rules/evdev.xml.in.h:395 +# Het Nedersorbisch is de noordelijke versie van de in Brandenburg +# gesproken Sorbische taal. +# http://nl.wikipedia.org/wiki/Nedersorbisch +#: ../rules/base.xml.in.h:418 +msgid "Lower Sorbian" +msgstr "Nedersorbisch" + +#: ../rules/base.xml.in.h:419 +msgid "Lower Sorbian (qwertz)" +msgstr "Nedersorbisch (qwertz)" + +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:396 ../rules/evdev.xml.in.h:396 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:397 ../rules/evdev.xml.in.h:397 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:398 ../rules/evdev.xml.in.h:398 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:399 ../rules/evdev.xml.in.h:399 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:400 ../rules/evdev.xml.in.h:400 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Macedonisch" -#: ../rules/base.xml.in.h:401 ../rules/evdev.xml.in.h:401 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:402 ../rules/evdev.xml.in.h:402 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh oud" -#: ../rules/base.xml.in.h:403 ../rules/evdev.xml.in.h:403 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Sun-‘dode toetsen’" -#: ../rules/base.xml.in.h:404 ../rules/evdev.xml.in.h:404 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, zonder dode toetsen" -#: ../rules/base.xml.in.h:405 ../rules/evdev.xml.in.h:405 -msgid "Make CapsLock an additional Ctrl." -msgstr "Van CapsLock een extra Ctrl maken." +# Backspace-toets +#: ../rules/base.xml.in.h:430 +msgid "Make CapsLock an additional Backspace" +msgstr "Van CapsLock een extra Backspace maken" + +# Ctrl-toets +#: ../rules/base.xml.in.h:431 +msgid "Make CapsLock an additional Ctrl" +msgstr "Van CapsLock een extra Ctrl maken" + +# ESC-toets +#: ../rules/base.xml.in.h:432 +msgid "Make CapsLock an additional ESC" +msgstr "Van CapsLock een extra ESC maken" + +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Van CapsLock een extra Hyper maken" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Van CapsLock een extra NumLock maken" -#: ../rules/base.xml.in.h:406 ../rules/evdev.xml.in.h:406 +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Van CapsLock een extra Super maken" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" # een van de 23 Indische talen -#: ../rules/base.xml.in.h:407 ../rules/evdev.xml.in.h:407 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" # een van de 23 Indische talen -#: ../rules/base.xml.in.h:408 ../rules/evdev.xml.in.h:408 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" # kan ook als Malediven worden geschreven. -#: ../rules/base.xml.in.h:409 ../rules/evdev.xml.in.h:409 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldiven" -#: ../rules/base.xml.in.h:410 ../rules/evdev.xml.in.h:410 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" # VS/US/ -#: ../rules/base.xml.in.h:411 ../rules/evdev.xml.in.h:411 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltees toetsenbord met US-indeling" -#: ../rules/base.xml.in.h:412 ../rules/evdev.xml.in.h:412 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:413 ../rules/evdev.xml.in.h:413 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:414 ../rules/evdev.xml.in.h:414 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:415 ../rules/evdev.xml.in.h:415 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access toetsenbord" -#: ../rules/base.xml.in.h:416 ../rules/evdev.xml.in.h:416 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:417 ../rules/evdev.xml.in.h:417 -msgid "Menu is Compose." -msgstr "Menu is samensteltoets." +#: ../rules/base.xml.in.h:447 +msgid "Menu" +msgstr "Menu" -#: ../rules/base.xml.in.h:418 ../rules/evdev.xml.in.h:418 -msgid "Menu key changes layout." -msgstr "Menu-toets verandert de indeling." +#: ../rules/base.xml.in.h:448 +msgid "Meta is mapped to Left Win" +msgstr "Meta zit op de linker Win-toets" -#: ../rules/base.xml.in.h:419 ../rules/evdev.xml.in.h:419 -msgid "Meta is mapped to the Win-keys." -msgstr "Meta wordt afgebeeld op de Win-toetsen." +#: ../rules/base.xml.in.h:449 +msgid "Meta is mapped to Win keys" +msgstr "Meta zit op de Win-toetsen" -#: ../rules/base.xml.in.h:420 ../rules/evdev.xml.in.h:420 -msgid "Meta is mapped to the left Win-key." -msgstr "Meta wordt afgebeeld op de linker Win-toets." +#: ../rules/base.xml.in.h:450 +msgid "Microsoft Comfort Curve Keyboard 2000" +msgstr "Microsoft Comfort Curve toetsenbord 2000" -#: ../rules/base.xml.in.h:421 ../rules/evdev.xml.in.h:421 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft internet toetsenbord" -#: ../rules/base.xml.in.h:422 ../rules/evdev.xml.in.h:422 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, Zweeds" -#: ../rules/base.xml.in.h:423 ../rules/evdev.xml.in.h:423 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:424 ../rules/evdev.xml.in.h:424 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:425 ../rules/evdev.xml.in.h:425 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:426 ../rules/evdev.xml.in.h:426 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:427 ../rules/evdev.xml.in.h:427 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:428 ../rules/evdev.xml.in.h:428 +#: ../rules/base.xml.in.h:458 +msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" +msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" + +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office toetsenbord" -#: ../rules/base.xml.in.h:429 ../rules/evdev.xml.in.h:429 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft draadloos multimediatoetsenbord 1.0A" -#: ../rules/base.xml.in.h:430 ../rules/evdev.xml.in.h:430 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Overige compatibiliteitsopties" -#: ../rules/base.xml.in.h:431 ../rules/evdev.xml.in.h:431 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:432 ../rules/evdev.xml.in.h:432 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:433 ../rules/evdev.xml.in.h:433 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:434 ../rules/evdev.xml.in.h:434 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:435 ../rules/evdev.xml.in.h:435 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongolië" # Servië en Montenegro -#: ../rules/base.xml.in.h:436 ../rules/evdev.xml.in.h:436 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:437 ../rules/evdev.xml.in.h:437 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marokko" -#: ../rules/base.xml.in.h:438 ../rules/evdev.xml.in.h:438 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Meertalig" -#: ../rules/base.xml.in.h:439 ../rules/evdev.xml.in.h:439 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Meertalig, eerste deel" -#: ../rules/base.xml.in.h:440 ../rules/evdev.xml.in.h:440 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Meertalig, tweede deel" -#: ../rules/base.xml.in.h:441 ../rules/evdev.xml.in.h:441 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:442 ../rules/evdev.xml.in.h:442 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "NICOLA-F stijl backspace" -#: ../rules/base.xml.in.h:443 ../rules/evdev.xml.in.h:443 -msgid "Neostyle" -msgstr "Neostijl" +#: ../rules/base.xml.in.h:474 +msgid "NLA" +msgstr "NLA" + +#: ../rules/base.xml.in.h:475 +msgid "Nativo" +msgstr "Nativo" + +#: ../rules/base.xml.in.h:476 +msgid "Nativo for Esperanto" +msgstr "Nativo voor Esperanto" -#: ../rules/base.xml.in.h:444 ../rules/evdev.xml.in.h:444 +#: ../rules/base.xml.in.h:477 +msgid "Nativo for USA keyboards" +msgstr "Nativo voor Amerikaanse toetsenborden" + +#: ../rules/base.xml.in.h:478 +msgid "Neo 2" +msgstr "Neo 2" + +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:445 ../rules/evdev.xml.in.h:445 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:446 ../rules/evdev.xml.in.h:446 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Nederland" -#: ../rules/base.xml.in.h:447 ../rules/evdev.xml.in.h:447 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Nieuw fonetisch" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:448 ../rules/evdev.xml.in.h:448 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:449 ../rules/evdev.xml.in.h:449 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:450 ../rules/evdev.xml.in.h:450 +# Spatiebalk geeft harde spatie op het vierde niveau. +#: ../rules/base.xml.in.h:486 +msgid "Non-breakable space character at fourth level" +msgstr "Harde spatie op het vierde niveau" + +# sixth level? hoeveel levels zijn er wel niet? +#: ../rules/base.xml.in.h:487 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" +msgstr "Harde spatie op het vierde niveau, smalle harde spatie op het zesde niveau" + +# sixth level? hoeveel levels zijn er wel niet? +#: ../rules/base.xml.in.h:488 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" +msgstr "Harde spatie op het vierde niveau, smalle harde spatie op het zesde niveau (via Ctrl+Shift)" + +#: ../rules/base.xml.in.h:489 +msgid "Non-breakable space character at second level" +msgstr "Harde spatie op het tweede niveau" + +#: ../rules/base.xml.in.h:490 +msgid "Non-breakable space character at third level" +msgstr "Harde spatie op het derde niveau" + +#: ../rules/base.xml.in.h:491 +msgid "Non-breakable space character at third level, nothing at fourth level" +msgstr "Harde spatie op het derde niveau, niets op het vierde niveau" + +#: ../rules/base.xml.in.h:492 +msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" +msgstr "Harde spatie op het derde niveau, smalle harde spatie op het vierde niveau" + +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:451 ../rules/evdev.xml.in.h:451 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Noord-Lapland" -#: ../rules/base.xml.in.h:452 ../rules/evdev.xml.in.h:452 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Noord-Lapland, zonder dode toetsen" -#: ../rules/base.xml.in.h:453 ../rules/evdev.xml.in.h:453 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:454 ../rules/evdev.xml.in.h:454 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Noorwegen" -#: ../rules/base.xml.in.h:455 ../rules/evdev.xml.in.h:455 -msgid "NumLock LED shows alternative layout." -msgstr "NumLock-lampje toont alternatieve indeling." +#: ../rules/base.xml.in.h:498 +msgid "NumLock" +msgstr "NumLock" -#: ../rules/base.xml.in.h:456 ../rules/evdev.xml.in.h:456 +# op het cijferblok is de delete toets aangegeven met del +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Cijferblok del-toetsgedrag" -#: ../rules/base.xml.in.h:457 ../rules/evdev.xml.in.h:457 -msgid "Numeric keypad keys work as with Mac." -msgstr "Cijferblok-toetsen werken net als bij een Mac." +#: ../rules/base.xml.in.h:500 +msgid "Numeric keypad keys work as with Mac" +msgstr "Cijferblok-toetsen werken net als bij een Mac" -#: ../rules/base.xml.in.h:458 ../rules/evdev.xml.in.h:458 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Cijferblok-indeling selecteren" -#: ../rules/base.xml.in.h:459 ../rules/evdev.xml.in.h:459 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:460 ../rules/evdev.xml.in.h:460 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:461 ../rules/evdev.xml.in.h:461 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:462 ../rules/evdev.xml.in.h:462 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:463 ../rules/evdev.xml.in.h:463 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Zuid-Oezbekistan" -#: ../rules/base.xml.in.h:464 ../rules/evdev.xml.in.h:464 +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "Occitaans" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Oghamees" -#: ../rules/base.xml.in.h:465 ../rules/evdev.xml.in.h:465 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Oghamees IS434" -#: ../rules/base.xml.in.h:466 ../rules/evdev.xml.in.h:466 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:467 ../rules/evdev.xml.in.h:467 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet toetsenbord" -#: ../rules/base.xml.in.h:468 ../rules/evdev.xml.in.h:468 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Osetisch" -#: ../rules/base.xml.in.h:469 ../rules/evdev.xml.in.h:469 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Osetisch, Win-toetsen" -#: ../rules/base.xml.in.h:470 ../rules/evdev.xml.in.h:470 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Osetisch, historisch" -#: ../rules/base.xml.in.h:471 ../rules/evdev.xml.in.h:471 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx serie" -#: ../rules/base.xml.in.h:472 ../rules/evdev.xml.in.h:472 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:473 ../rules/evdev.xml.in.h:473 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:474 ../rules/evdev.xml.in.h:474 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:475 ../rules/evdev.xml.in.h:475 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:476 ../rules/evdev.xml.in.h:476 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persisch, met Persisch cijferblok" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetisch" -#: ../rules/base.xml.in.h:477 ../rules/evdev.xml.in.h:477 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "Fonetisch Win-toetsen" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:478 ../rules/evdev.xml.in.h:478 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polen" -#: ../rules/base.xml.in.h:479 ../rules/evdev.xml.in.h:479 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Meertonig" -#: ../rules/base.xml.in.h:480 ../rules/evdev.xml.in.h:480 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:481 ../rules/evdev.xml.in.h:481 -msgid "Press Left Alt key to choose 3rd level." -msgstr "De linker Alt-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:482 ../rules/evdev.xml.in.h:482 -msgid "Press Left Win-key to choose 3rd level." -msgstr "De linker Win-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:483 ../rules/evdev.xml.in.h:483 -msgid "Press Menu key to choose 3rd level." -msgstr "De Menu-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:484 ../rules/evdev.xml.in.h:484 -msgid "Press Right Alt key to choose 3rd level, Shift+Right Alt key is Multi_Key." -msgstr "De rechter Alt-toets geeft het 3e niveau, Shift + rechter Alt-toets is Multi_Key." - -#: ../rules/base.xml.in.h:485 ../rules/evdev.xml.in.h:485 -msgid "Press Right Alt key to choose 3rd level." -msgstr "De rechter Alt-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:486 ../rules/evdev.xml.in.h:486 -msgid "Press Right Ctrl to choose 3rd level." -msgstr "De rechter Ctrl-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:487 ../rules/evdev.xml.in.h:487 -msgid "Press Right Win-key to choose 3rd level." -msgstr "De rechter Win-toets geeft het 3e niveau." - -# dubbelzinnig "beide" -#: ../rules/base.xml.in.h:488 ../rules/evdev.xml.in.h:488 -msgid "Press any of Alt keys to choose 3rd level." -msgstr "Zowel de linker als de rechter Alt-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:489 ../rules/evdev.xml.in.h:489 -msgid "Press any of Win-keys to choose 3rd level." -msgstr "Zowel de linker als de rechter Win-toets geeft het 3e niveau." - -#: ../rules/base.xml.in.h:490 ../rules/evdev.xml.in.h:490 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:491 ../rules/evdev.xml.in.h:491 -msgid "Pro Keypad" -msgstr "Pro toetsenbord" - -#: ../rules/base.xml.in.h:492 ../rules/evdev.xml.in.h:492 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:493 ../rules/evdev.xml.in.h:493 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programmeer-Dvorak" -#: ../rules/base.xml.in.h:494 ../rules/evdev.xml.in.h:494 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:495 ../rules/evdev.xml.in.h:495 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:496 ../rules/evdev.xml.in.h:496 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:497 ../rules/evdev.xml.in.h:497 -msgid "R-Alt switches layout while pressed." -msgstr "Rechter Alt wisselt de indeling gedurende het indrukken." - -#: ../rules/base.xml.in.h:498 ../rules/evdev.xml.in.h:498 -msgid "Right Alt is Compose." -msgstr "Rechter Alt is samensteltoets." - -#: ../rules/base.xml.in.h:499 ../rules/evdev.xml.in.h:499 -msgid "Right Alt key changes layout." -msgstr "Rechter Alt-toets verandert de indeling." +#: ../rules/base.xml.in.h:532 +msgid "Right Alt" +msgstr "Rechter Alt-toets" -#: ../rules/base.xml.in.h:500 ../rules/evdev.xml.in.h:500 -msgid "Right Alt key never chooses 3rd level." -msgstr "Rechter Alt-toets geeft het 3e niveau." +# BUG Alt ipv Alt key +#: ../rules/base.xml.in.h:533 +msgid "Right Alt (while pressed)" +msgstr "Rechter Alt-toets (ingedrukt houden)" -#: ../rules/base.xml.in.h:501 ../rules/evdev.xml.in.h:501 -msgid "Right Ctrl is Compose." -msgstr "Rechter Control is samensteltoets." +#: ../rules/base.xml.in.h:534 +msgid "Right Alt key never chooses 3rd level" +msgstr "Rechter Alt-toets geeft nooit het 3e niveau" -#: ../rules/base.xml.in.h:502 ../rules/evdev.xml.in.h:502 -msgid "Right Ctrl key changes layout." -msgstr "Rechter Ctrl-toets verandert de indeling." +#: ../rules/base.xml.in.h:535 +msgid "Right Alt, Shift+Right Alt key is Multi_Key" +msgstr "Rechter Alt-toets, Shift + rechter Alt-toets is Multi_Key" -#: ../rules/base.xml.in.h:503 ../rules/evdev.xml.in.h:503 -msgid "Right Ctrl key switches layout while pressed." -msgstr "Rechter Ctrl-toets wisselt indeling gedurende het indrukken." +#: ../rules/base.xml.in.h:536 +msgid "Right Ctrl" +msgstr "Rechter Ctrl-toets" -#: ../rules/base.xml.in.h:504 ../rules/evdev.xml.in.h:504 -msgid "Right Ctrl key works as Right Alt." -msgstr "Rechter Ctrl-toets doet hetzelfde als de rechter Alt-toets." +#: ../rules/base.xml.in.h:537 +msgid "Right Ctrl (while pressed)" +msgstr "Rechter Ctrl-toets (ingedrukt houden)" -#: ../rules/base.xml.in.h:505 ../rules/evdev.xml.in.h:505 -msgid "Right Shift key changes layout." -msgstr "Rechter Shift-toets verandert de indeling." +# Rechter Ctrl-toets doet hetzelfde als de rechter Alt-toets. +#: ../rules/base.xml.in.h:538 +msgid "Right Ctrl as Right Alt" +msgstr "Rechter Ctrl-toets en Alt-toets hetzelfde" -#: ../rules/base.xml.in.h:506 ../rules/evdev.xml.in.h:506 -msgid "Right Win-key changes layout." -msgstr "Rechter Win-toets verandert de indeling." +#: ../rules/base.xml.in.h:539 +msgid "Right Shift" +msgstr "Rechter Shift-toets" -#: ../rules/base.xml.in.h:507 ../rules/evdev.xml.in.h:507 -msgid "Right Win-key is Compose." -msgstr "Rechter Win-toets is samensteltoets." +#: ../rules/base.xml.in.h:540 +msgid "Right Win" +msgstr "Rechter Win-toets" -#: ../rules/base.xml.in.h:508 ../rules/evdev.xml.in.h:508 -msgid "Right Win-key switches layout while pressed." -msgstr "Rechter Win-toets wisselt de indeling gedurende het indrukken." +#: ../rules/base.xml.in.h:541 +msgid "Right Win (while pressed)" +msgstr "Rechter Win-toets (ingedrukt houden)" -#: ../rules/base.xml.in.h:509 ../rules/evdev.xml.in.h:509 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Rechtshandig" -#: ../rules/base.xml.in.h:510 ../rules/evdev.xml.in.h:510 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Rechtshandige Dvorak" -#: ../rules/base.xml.in.h:511 ../rules/evdev.xml.in.h:511 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Roemenië" -#: ../rules/base.xml.in.h:512 ../rules/evdev.xml.in.h:512 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Roemeens toetsenbord met Duitse lettertekens" -#: ../rules/base.xml.in.h:513 ../rules/evdev.xml.in.h:513 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Roemeens toetsenbord met Duitse lettertekens, zonder dode toetsen" -#: ../rules/base.xml.in.h:514 ../rules/evdev.xml.in.h:514 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:515 ../rules/evdev.xml.in.h:515 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:516 ../rules/evdev.xml.in.h:516 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Rusland" -#: ../rules/base.xml.in.h:517 ../rules/evdev.xml.in.h:517 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Russisch" -#: ../rules/base.xml.in.h:518 ../rules/evdev.xml.in.h:518 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Russisch fonetisch" -#: ../rules/base.xml.in.h:519 ../rules/evdev.xml.in.h:519 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Russisch-fonetisch Dvorak" -#: ../rules/base.xml.in.h:520 ../rules/evdev.xml.in.h:520 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Russisch fonetisch, zonder dode toetsen" -#: ../rules/base.xml.in.h:521 ../rules/evdev.xml.in.h:521 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Russisch met Kazachstaans" # draadloos toetsenbord -#: ../rules/base.xml.in.h:522 ../rules/evdev.xml.in.h:522 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:523 ../rules/evdev.xml.in.h:523 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:524 ../rules/evdev.xml.in.h:524 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:525 ../rules/evdev.xml.in.h:525 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:526 ../rules/evdev.xml.in.h:526 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:527 ../rules/evdev.xml.in.h:527 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:528 ../rules/evdev.xml.in.h:528 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:529 ../rules/evdev.xml.in.h:529 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:530 ../rules/evdev.xml.in.h:530 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:531 ../rules/evdev.xml.in.h:531 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:532 ../rules/evdev.xml.in.h:532 -msgid "ScrollLock LED shows alternative layout." -msgstr "ScrollLock-lampje toont alternatieve indeling." +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Scroll Lock" + +#: ../rules/base.xml.in.h:566 +msgid "ScrollLock" +msgstr "ScrollLock" # Canadees-Indiaanse taal (Shuswap) -#: ../rules/base.xml.in.h:533 ../rules/evdev.xml.in.h:533 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:534 ../rules/evdev.xml.in.h:534 +#: ../rules/base.xml.in.h:568 +msgid "Semi-colon on third level" +msgstr "Punt-komma op derde niveau" + +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Servisch" -#: ../rules/base.xml.in.h:535 ../rules/evdev.xml.in.h:535 -msgid "Shift cancels CapsLock." +#: ../rules/base.xml.in.h:570 +msgid "Shift cancels CapsLock" msgstr "Shift heft CapsLock op" -#: ../rules/base.xml.in.h:536 ../rules/evdev.xml.in.h:536 -msgid "Shift with numeric keypad keys works as in MS Windows." -msgstr "Shift met cijferblok-toetsen werkt zoals in MS Windows." +#: ../rules/base.xml.in.h:571 +msgid "Shift does not cancel NumLock, chooses 3d level instead" +msgstr "Shift heft NumLock niet op, maar geeft juist het 3e niveau" -#: ../rules/base.xml.in.h:537 ../rules/evdev.xml.in.h:537 -msgid "Shift+CapsLock changes layout." -msgstr "Shift+CapsLock verandert de indeling." +#: ../rules/base.xml.in.h:572 +msgid "Shift with numeric keypad keys works as in MS Windows" +msgstr "Shift met cijferblok-toetsen werkt zoals in MS Windows" -#: ../rules/base.xml.in.h:538 ../rules/evdev.xml.in.h:538 +#: ../rules/base.xml.in.h:573 +msgid "Shift+CapsLock" +msgstr "Shift+CapsLock" + +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Simpel" -#: ../rules/base.xml.in.h:539 ../rules/evdev.xml.in.h:539 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slowakije" -#: ../rules/base.xml.in.h:540 ../rules/evdev.xml.in.h:540 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenië" -#: ../rules/base.xml.in.h:541 ../rules/evdev.xml.in.h:541 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Zuid-Afrika" -#: ../rules/base.xml.in.h:542 ../rules/evdev.xml.in.h:542 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Zuid-Oezbekistan" -# BUG geen punt op eind -# sixth level? hoeveel levels zijn er wel niet? -#: ../rules/base.xml.in.h:543 ../rules/evdev.xml.in.h:543 -msgid "Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level" -msgstr "Spatiebalk geeft harde spatie op het vierde niveau, smalle harde spatie op het zesde niveau." - -# BUG geen sluithaakje op eind -# sixth level? hoeveel levels zijn er wel niet? -#: ../rules/base.xml.in.h:544 ../rules/evdev.xml.in.h:544 -msgid "Space key outputs non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift" -msgstr "Spatiebalk geeft harde spatie op het vierde niveau, smalle harde spatie op het zesde niveau (via Ctrl+Shift)." - -#: ../rules/base.xml.in.h:545 ../rules/evdev.xml.in.h:545 -msgid "Space key outputs non-breakable space character at fourth level." -msgstr "Spatiebalk geeft harde spatie op het vierde niveau." - -#: ../rules/base.xml.in.h:546 ../rules/evdev.xml.in.h:546 -msgid "Space key outputs non-breakable space character at second level." -msgstr "Spatiebalk geeft harde spatie op het tweede niveau." - -#: ../rules/base.xml.in.h:547 ../rules/evdev.xml.in.h:547 -msgid "Space key outputs non-breakable space character at third level, nothing at fourth level." -msgstr "Spatiebalk geeft harde spatie op het derde niveau, niets op het vierde niveau." - -# BUG geen punt op het einde -#: ../rules/base.xml.in.h:548 ../rules/evdev.xml.in.h:548 -msgid "Space key outputs non-breakable space character at third level, thin non-breakable space character at fourth level" -msgstr "Spatiebalk geeft harde spatie op het derde niveau, smalle harde spatie op het vierde niveau." - -#: ../rules/base.xml.in.h:549 ../rules/evdev.xml.in.h:549 -msgid "Space key outputs non-breakable space character at third level." -msgstr "Spatiebalk geeft harde spatie op het derde niveau." - -#: ../rules/base.xml.in.h:550 ../rules/evdev.xml.in.h:550 -msgid "Space key outputs usual space at any level." -msgstr "Spatiebalk geeft de gebruikelijke spatie op elk niveau." - -#: ../rules/base.xml.in.h:551 ../rules/evdev.xml.in.h:551 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanje" -#: ../rules/base.xml.in.h:552 ../rules/evdev.xml.in.h:552 -msgid "Special keys (Ctrl+Alt+<key>) handled in a server." -msgstr "Speciale toetsen (Ctrl+Alt+<toets>) afgehandeld in een server." +#: ../rules/base.xml.in.h:580 +msgid "Special keys (Ctrl+Alt+<key>) handled in a server" +msgstr "Speciale toetsen (Ctrl+Alt+<toets>) afgehandeld in een server" -#: ../rules/base.xml.in.h:553 ../rules/evdev.xml.in.h:553 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:554 ../rules/evdev.xml.in.h:554 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:555 ../rules/evdev.xml.in.h:555 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standaard" -#: ../rules/base.xml.in.h:556 ../rules/evdev.xml.in.h:556 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standaard (Cedilla)" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:558 ../rules/evdev.xml.in.h:558 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standaard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:560 ../rules/evdev.xml.in.h:560 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standaard RSTU op Russische indeling" -#: ../rules/base.xml.in.h:561 ../rules/evdev.xml.in.h:561 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun type 5/6" -#: ../rules/base.xml.in.h:562 ../rules/evdev.xml.in.h:562 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun dode toetsen" -#: ../rules/base.xml.in.h:563 ../rules/evdev.xml.in.h:563 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power multimediatoetsenbord" -#: ../rules/base.xml.in.h:564 ../rules/evdev.xml.in.h:564 -msgid "Super is mapped to the Win-keys." -msgstr "Super wordt afgebeeld op de Win-toetsen." - # Slovaaks Dvorak? -#: ../rules/base.xml.in.h:565 ../rules/evdev.xml.in.h:565 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:566 ../rules/evdev.xml.in.h:566 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:567 ../rules/evdev.xml.in.h:567 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:568 ../rules/evdev.xml.in.h:568 -msgid "Swap Ctrl and CapsLock." -msgstr "Ctrl en CapsLock omwisselen." +#: ../rules/base.xml.in.h:595 +msgid "Swap Ctrl and CapsLock" +msgstr "Ctrl en CapsLock omwisselen" -#: ../rules/base.xml.in.h:569 ../rules/evdev.xml.in.h:569 -msgid "Swap ESC and CapsLock." -msgstr "Esc en CapsLock omwisselen." - -# dit is de uitleg van bovenstaand bericht -#: ../rules/base.xml.in.h:570 ../rules/evdev.xml.in.h:570 -msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -msgstr "De keycodes van twee toetsen omwisselen wanneer Mac-toetsenborden niet juist herkend worden door de kernel." +#: ../rules/base.xml.in.h:596 +msgid "Swap ESC and CapsLock" +msgstr "Esc en CapsLock omwisselen" -#: ../rules/base.xml.in.h:571 ../rules/evdev.xml.in.h:571 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:572 ../rules/evdev.xml.in.h:572 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Zweden" -#: ../rules/base.xml.in.h:573 ../rules/evdev.xml.in.h:573 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Zwitserland" -#: ../rules/base.xml.in.h:574 ../rules/evdev.xml.in.h:574 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:575 ../rules/evdev.xml.in.h:575 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:576 ../rules/evdev.xml.in.h:576 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syrië" -#: ../rules/base.xml.in.h:577 ../rules/evdev.xml.in.h:577 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syrisch" -#: ../rules/base.xml.in.h:578 ../rules/evdev.xml.in.h:578 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syrisch fonetisch" -#: ../rules/base.xml.in.h:579 ../rules/evdev.xml.in.h:579 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:580 ../rules/evdev.xml.in.h:580 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tadzjikistan" -#: ../rules/base.xml.in.h:581 ../rules/evdev.xml.in.h:581 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamil" -#: ../rules/base.xml.in.h:582 ../rules/evdev.xml.in.h:582 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB typmachine" -#: ../rules/base.xml.in.h:583 ../rules/evdev.xml.in.h:583 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII typmachine" -#: ../rules/base.xml.in.h:584 ../rules/evdev.xml.in.h:584 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamil unicode" -#: ../rules/base.xml.in.h:585 ../rules/evdev.xml.in.h:585 +#: ../rules/base.xml.in.h:611 +msgid "Targa Visionary 811" +msgstr "Targa Visionary 811" + +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:586 ../rules/evdev.xml.in.h:586 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugu" -#: ../rules/base.xml.in.h:587 ../rules/evdev.xml.in.h:587 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:588 ../rules/evdev.xml.in.h:588 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailand" -#: ../rules/base.xml.in.h:589 ../rules/evdev.xml.in.h:589 -msgid "Third level choosers" -msgstr "3e niveau kiezers" - -#: ../rules/base.xml.in.h:590 ../rules/evdev.xml.in.h:590 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetaans" -#: ../rules/base.xml.in.h:591 ../rules/evdev.xml.in.h:591 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetaans (met ASCII-cijfers)" -#: ../rules/base.xml.in.h:592 ../rules/evdev.xml.in.h:592 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:593 ../rules/evdev.xml.in.h:593 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternatief" -#: ../rules/base.xml.in.h:594 ../rules/evdev.xml.in.h:594 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh alternatief fonetisch" -#: ../rules/base.xml.in.h:595 ../rules/evdev.xml.in.h:595 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh uitgebreid" -#: ../rules/base.xml.in.h:596 ../rules/evdev.xml.in.h:596 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh fonetisch uitgebreid" -#: ../rules/base.xml.in.h:597 ../rules/evdev.xml.in.h:597 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh fonetisch" -#: ../rules/base.xml.in.h:598 ../rules/evdev.xml.in.h:598 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilde (~) variant" -#: ../rules/base.xml.in.h:599 ../rules/evdev.xml.in.h:599 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:600 ../rules/evdev.xml.in.h:600 +#: ../rules/base.xml.in.h:626 +msgid "To the corresponding key in a Dvorak keyboard." +msgstr "Naar de corresponderende toets op een Dvorak toetsenbord." + +#: ../rules/base.xml.in.h:627 +msgid "To the corresponding key in a Qwerty keyboard." +msgstr "Naar de corresponderende toets op een Qwerty toetsenbord." + +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:601 ../rules/evdev.xml.in.h:601 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Traditioneel fonetisch" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access toetsenbord" +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + # classic is hier onderdeel van merknaam? -#: ../rules/base.xml.in.h:602 ../rules/evdev.xml.in.h:602 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:603 ../rules/evdev.xml.in.h:603 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:604 ../rules/evdev.xml.in.h:604 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turkije" -#: ../rules/base.xml.in.h:605 ../rules/evdev.xml.in.h:605 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "Turkmenistan" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Typmachine" -#: ../rules/base.xml.in.h:606 ../rules/evdev.xml.in.h:606 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW-indeling (allen lettertekens met accenten)" # lettersamenstelling? -#: ../rules/base.xml.in.h:607 ../rules/evdev.xml.in.h:607 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Amerikaans toetsenbord met Bosnische digrafen" -#: ../rules/base.xml.in.h:608 ../rules/evdev.xml.in.h:608 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Amerikaans toetsenbord met Bosnische lettertekens" -#: ../rules/base.xml.in.h:609 ../rules/evdev.xml.in.h:609 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Amerikaans toetsenbord met Kroatische digrafen" -#: ../rules/base.xml.in.h:610 ../rules/evdev.xml.in.h:610 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Amerikaans toetsenbord met Kroatische lettertekens" -#: ../rules/base.xml.in.h:611 ../rules/evdev.xml.in.h:611 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Amerikaans toetsenbord met Estlandse lettertekens" -#: ../rules/base.xml.in.h:612 ../rules/evdev.xml.in.h:612 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Amerikaans toetsenbord met Italiaanse lettertekens" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Amerikaans toetsenbord met Litouwse lettertekens" -#: ../rules/base.xml.in.h:613 ../rules/evdev.xml.in.h:613 -msgid "US keyboard with Slovenian digraphs" -msgstr "Amerikaans toetsenbord met Sloveense digrafen" - -#: ../rules/base.xml.in.h:614 ../rules/evdev.xml.in.h:614 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Amerikaans toetsenbord met Sloveense lettertekens" -#: ../rules/base.xml.in.h:615 ../rules/evdev.xml.in.h:615 +# eigenlijk VS maar dat is veel dubbelzinniger, +# iedereen weet wat USA betekent, VS kan voor veel dingen staan +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" -msgstr "VS" +msgstr "USA" -#: ../rules/base.xml.in.h:616 ../rules/evdev.xml.in.h:616 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurts" -#: ../rules/base.xml.in.h:617 ../rules/evdev.xml.in.h:617 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:618 ../rules/evdev.xml.in.h:618 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Oekraïne" -#: ../rules/base.xml.in.h:619 ../rules/evdev.xml.in.h:619 +#: ../rules/base.xml.in.h:650 +msgid "Unicode additions (arrows and math operators)" +msgstr "Unicode-aanvullingen (pijlen en wiskundige operatoren)" + +#: ../rules/base.xml.in.h:651 +msgid "Unicode additions (arrows and math operators). Math operators on default level" +msgstr "Unicode-aanvullingen (pijlen en wiskundige operatoren). Wiskundige operatoren op het standaard niveau" + +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:620 ../rules/evdev.xml.in.h:620 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Verenigd Koninkrijk" -#: ../rules/base.xml.in.h:621 ../rules/evdev.xml.in.h:621 -msgid "Urdu" -msgstr "Urdu" +#: ../rules/base.xml.in.h:654 +msgid "Unitek KB-1925" +msgstr "Unitek KB-1925" + +#: ../rules/base.xml.in.h:655 +msgid "Urdu, Alternative phonetic" +msgstr "Urdu, alternatief fonetisch" + +#: ../rules/base.xml.in.h:656 +msgid "Urdu, Phonetic" +msgstr "Urdu, fonetisch" -#: ../rules/base.xml.in.h:622 ../rules/evdev.xml.in.h:622 +#: ../rules/base.xml.in.h:657 +msgid "Urdu, Winkeys" +msgstr "Urdu, Win-toetsen" + +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Bosnische digrafen gebruiken" -#: ../rules/base.xml.in.h:623 ../rules/evdev.xml.in.h:623 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Kroatische digrafen gebruiken" -#: ../rules/base.xml.in.h:624 ../rules/evdev.xml.in.h:624 -msgid "Use Slovenian digraphs" -msgstr "Sloveense digrafen gebruiken" - # Guillemets of ook quillemets zijn Franse aanhalingstekens. # Dit is de "Nederlandse" en dit is de «Franse manier» van aanhalen. -#: ../rules/base.xml.in.h:625 ../rules/evdev.xml.in.h:625 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Franse aanhalingstekens gebruiken voor citaten" -#: ../rules/base.xml.in.h:626 ../rules/evdev.xml.in.h:626 -msgid "Use keyboard LED to show alternative layout." -msgstr "Toetsenbord-lampje gebruiken om alternatieve indeling te tonen." +#: ../rules/base.xml.in.h:661 +msgid "Use keyboard LED to show alternative layout" +msgstr "Toetsenbord-LED gebruiken om alternatieve indeling te tonen" -#: ../rules/base.xml.in.h:627 ../rules/evdev.xml.in.h:627 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Spatiebalk gebruiken voor het invoeren van niet-afbrekende (harde) spaties" -#: ../rules/base.xml.in.h:628 ../rules/evdev.xml.in.h:628 +# Spatiebalk geeft de gebruikelijke spatie op elk niveau. +#: ../rules/base.xml.in.h:663 +msgid "Usual space at any level" +msgstr "Gebruikelijke spatie op elk niveau" + +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:629 ../rules/evdev.xml.in.h:629 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Oezbekistan" -#: ../rules/base.xml.in.h:630 ../rules/evdev.xml.in.h:630 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Viëtnam" -#: ../rules/base.xml.in.h:631 ../rules/evdev.xml.in.h:631 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 internet toetsenbord" -#: ../rules/base.xml.in.h:632 ../rules/evdev.xml.in.h:632 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:633 ../rules/evdev.xml.in.h:633 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 cijferblok met unicode-aanvullingen (pijlen en wiskundige operatoren)" -#: ../rules/base.xml.in.h:634 ../rules/evdev.xml.in.h:634 -msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level." -msgstr "Wang 724 cijferblok met unicode aanvullingen (pijlen en wiskundige operatoren). Wiskundige operatoren op het standaard niveau." +#: ../rules/base.xml.in.h:670 +msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" +msgstr "Wang 724 cijferblok met unicode aanvullingen (pijlen en wiskundige operatoren). Wiskundige operatoren op het standaard niveau" -#: ../rules/base.xml.in.h:635 ../rules/evdev.xml.in.h:635 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:636 ../rules/evdev.xml.in.h:636 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Westers" -#: ../rules/base.xml.in.h:637 ../rules/evdev.xml.in.h:637 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:638 ../rules/evdev.xml.in.h:638 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-toetsen" -#: ../rules/base.xml.in.h:639 ../rules/evdev.xml.in.h:639 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Met <\\|>-toets" -#: ../rules/base.xml.in.h:640 ../rules/evdev.xml.in.h:640 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Met het Euro-teken bij de 5" # Guillemets of ook quillemets zijn Franse aanhalingstekens. # Dit is "Nederlands" en dit is de «Franse manier» van aanhalen. -#: ../rules/base.xml.in.h:641 ../rules/evdev.xml.in.h:641 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Met Franse aanhalingstekens" -#: ../rules/base.xml.in.h:642 ../rules/evdev.xml.in.h:642 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! internettoetsenbord" -#: ../rules/base.xml.in.h:643 ../rules/evdev.xml.in.h:643 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Yakut" -#: ../rules/base.xml.in.h:644 ../rules/evdev.xml.in.h:644 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:645 ../rules/evdev.xml.in.h:645 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z en ZHE omgewisseld" -#: ../rules/base.xml.in.h:646 ../rules/evdev.xml.in.h:646 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:647 ../rules/evdev.xml.in.h:647 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:648 ../rules/evdev.xml.in.h:648 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/cijfers" -#: ../rules/base.xml.in.h:649 ../rules/evdev.xml.in.h:649 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "cijfers" -#: ../rules/base.xml.in.h:650 ../rules/evdev.xml.in.h:650 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "puntkomma en aanhalingsteken op afwijkende plek (historisch)" -#: ../rules/base.xml.in.h:651 ../rules/evdev.xml.in.h:651 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:652 ../rules/evdev.xml.in.h:652 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" # brede backslash/uitgebreide backslash -#: ../rules/base.xml.in.h:653 ../rules/evdev.xml.in.h:653 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, brede backslash" -#: ../rules/base.xml.in.h:654 ../rules/evdev.xml.in.h:654 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/cijfers" -#: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Combinerende accenten in plaats van dode toetsen" + +# Coeur d'Alene is a Salishan language spoken by only five of the 800 individuals in the Coeur d'Alene Tribe on the Coeur d'Alene Reservation in northern Idaho, United States. +# http://en.wikipedia.org/wiki/Coeur_d'Alene_language +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Coeur D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internationaal (AltGr Unicode combinatie)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internationaal (AltGr Unicode combinatie, alternatief)" + +# toevoegen/toekennen +#~ msgid "Add the EuroSign to the 2 key." +#~ msgstr "Het Euro-teken toevoegen aan de 2-toets." + +# toevoegen/toekennen +#~ msgid "Add the EuroSign to the 4 key." +#~ msgstr "Het Euro-teken toevoegen aan de 4-toets." + +#~ msgid "Add the EuroSign to the 5 key." +#~ msgstr "Het Euro-teken toevoegen aan de 5-toets." + +#~ msgid "Add the EuroSign to the E key." +#~ msgstr "Het Euro-teken toevoegen aan de E-toets." + +#~ msgid "Alt+Ctrl change layout." +#~ msgstr "Alt+Ctrl verandert de indeling." + +#~ msgid "Alt+Shift change layout." +#~ msgstr "Alt+Shift verandert de indeling." + +# verandert/wijzigt hier beter dan veranderen/wijzigen +#~ msgid "Both Alt keys together change layout." +#~ msgstr "Beide Alt-toetsen samen verandert de indeling." + +#~ msgid "Both Ctrl keys together change layout." +#~ msgstr "Beide Ctrl-toetsen samen verandert de indeling." + +#~ msgid "Both Shift keys together change layout." +#~ msgstr "Beide Shift-toetsen samen verandert de indeling." + +#~ msgid "Brazilian ABNT2" +#~ msgstr "Braziliaans ABNT2" + +#~ msgid "Caps Lock is Compose." +#~ msgstr "Caps Lock is samensteltoets." + +#~ msgid "CapsLock LED shows alternative layout." +#~ msgstr "CapsLock-lampje toont de alternatieve indeling." + +#~ msgid "CapsLock just locks the Shift modifier." +#~ msgstr "CapsLock blokkeert slechts de Shift-toets." + +#~ msgid "CapsLock key changes layout." +#~ msgstr "CapsLock-toets verandert de indeling." + +#~ msgid "Ctrl+Shift change layout." +#~ msgstr "Ctrl+Shift verandert de indeling." + +#~ msgid "Hewlett-Packard Internet Keyboard 5181" +#~ msgstr "Hewlett-Packard internet toetsenbord 5181" + +#~ msgid "Hewlett-Packard Internet Keyboard 5185" +#~ msgstr "Hewlett-Packard internet toetsenbord 5185" + +#~ msgid "Hewlett-Packard SK-2505 Internet Keyboard" +#~ msgstr "Hewlett-Packard SK-2505 internet toetsenbord" + +#~ msgid "IBM Rapid Access II (alternate option)" +#~ msgstr "IBM Rapid Access II (alternatieve optie)" + +#~ msgid "Japanese 106-key" +#~ msgstr "Japans 106-toetsen" + +# nummerblok/ +#~ msgid "Keypad" +#~ msgstr "Nummerblok" + +#~ msgid "Kir" +#~ msgstr "Kir" + +#~ msgid "Korean 106-key" +#~ msgstr "Koreaans 106-toetsen" + +#~ msgid "LCtrl+LShift change layout." +#~ msgstr "Linker Ctrl+Linker Shift verandert de indeling." + +#~ msgid "Layout switching" +#~ msgstr "Wisselen van indeling" + +#~ msgid "Left Alt key changes layout." +#~ msgstr "Linker Alt-toets verandert de indeling." + +#~ msgid "Left Ctrl key changes layout." +#~ msgstr "Linker Ctrl-toets verandert de indeling." + +#~ msgid "Left Shift key changes layout." +#~ msgstr "Linker Shift-toets verandert de indeling." + +#~ msgid "Left Win-key changes layout." +#~ msgstr "Linker Win-toets verandert de indeling." + +#~ msgid "Left Win-key is Compose." +#~ msgstr "Linker Win-toets is samensteltoets." + +#~ msgid "Legacy keypad" +#~ msgstr "Historisch cijferblok" + +#~ msgid "Menu is Compose." +#~ msgstr "Menu is samensteltoets." + +#~ msgid "Neostyle" +#~ msgstr "Neostijl" + +#~ msgid "NumLock LED shows alternative layout." +#~ msgstr "NumLock-lampje toont alternatieve indeling." + +#~ msgid "Press Left Alt key to choose 3rd level." +#~ msgstr "De linker Alt-toets geeft het 3e niveau." + +#~ msgid "Press Left Win-key to choose 3rd level." +#~ msgstr "De linker Win-toets geeft het 3e niveau." + +#~ msgid "Press Right Alt key to choose 3rd level." +#~ msgstr "De rechter Alt-toets geeft het 3e niveau." + +#~ msgid "Press Right Ctrl to choose 3rd level." +#~ msgstr "De rechter Ctrl-toets geeft het 3e niveau." + +#~ msgid "Press Right Win-key to choose 3rd level." +#~ msgstr "De rechter Win-toets geeft het 3e niveau." + +# dubbelzinnig "beide" +#~ msgid "Press any of Alt keys to choose 3rd level." +#~ msgstr "Zowel de linker als de rechter Alt-toets geeft het 3e niveau." + +#~ msgid "Press any of Win-keys to choose 3rd level." +#~ msgstr "Zowel de linker als de rechter Win-toets geeft het 3e niveau." + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Right Alt is Compose." +#~ msgstr "Rechter Alt is samensteltoets." + +#~ msgid "Right Alt key changes layout." +#~ msgstr "Rechter Alt-toets verandert de indeling." + +#~ msgid "Right Ctrl key changes layout." +#~ msgstr "Rechter Ctrl-toets verandert de indeling." + +#~ msgid "Right Shift key changes layout." +#~ msgstr "Rechter Shift-toets verandert de indeling." + +#~ msgid "Right Win-key changes layout." +#~ msgstr "Rechter Win-toets verandert de indeling." + +#~ msgid "Right Win-key is Compose." +#~ msgstr "Rechter Win-toets is samensteltoets." + +#~ msgid "ScrollLock LED shows alternative layout." +#~ msgstr "ScrollLock-lampje toont alternatieve indeling." + +#~ msgid "Shift+CapsLock changes layout." +#~ msgstr "Shift+CapsLock verandert de indeling." + +# dit is de uitleg van bovenstaand bericht +#~ msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." +#~ msgstr "De keycodes van twee toetsen omwisselen wanneer Mac-toetsenborden niet juist herkend worden door de kernel." + +#~ msgid "Third level choosers" +#~ msgstr "3e niveau kiezers" + +#~ msgid "US keyboard with Slovenian digraphs" +#~ msgstr "Amerikaans toetsenbord met Sloveense digrafen" + +#~ msgid "Urdu" +#~ msgstr "Urdu" + +#~ msgid "Use Slovenian digraphs" +#~ msgstr "Sloveense digrafen gebruiken" + #~ msgid "(Legacy) Dvorak" #~ msgstr "(Historisch) Dvorak" @@ -2697,26 +3068,12 @@ msgstr "qwertz" #~ msgid "Belgian" #~ msgstr "Belgisch" -# verandert/wijzigt hier beter dan veranderen/wijzigen -#~ msgid "Both Alt keys together change group" -#~ msgstr "Beide Alt-toetsen samen verandert de groep." - -#~ msgid "Both Ctrl keys together change group" -#~ msgstr "Beide Ctrl-toetsen samen verandert de groep." - -#~ msgid "Both Shift keys together change group" -#~ msgstr "Beide Shift-toetsen samen verandert de groep." - #~ msgid "Bulgarian" #~ msgstr "Bulgaars" #~ msgid "Canadian" #~ msgstr "Canadees" -# BUG Caps Lock los van elkaar -#~ msgid "Caps Lock is Compose" -#~ msgstr "Caps Lock is samensteltoets" - #~ msgid "Caps Lock key changes group" #~ msgstr "Caps Lock-toets verandert de groep" @@ -2738,9 +3095,6 @@ msgstr "qwertz" #~ msgid "Czech" #~ msgstr "Tsjechisch" -#~ msgid "Danish" -#~ msgstr "Deens" - # (Zwitsers Duits) #~ msgid "DeuCH" #~ msgstr "DeuCH" @@ -2773,18 +3127,12 @@ msgstr "qwertz" #~ msgid "Left Alt key changes group" #~ msgstr "Linker Alt-toets verandert de groep" -#~ msgid "Left Alt key switches group while pressed" -#~ msgstr "Linker Alt-toets wisselt de groep gedurende het indrukken" - #~ msgid "Left Ctrl key changes group" #~ msgstr "Linker Ctrl-toets verandert de groep" #~ msgid "Left Shift key changes group" #~ msgstr "Linker Shift-toets verandert de groep" -#~ msgid "Make CapsLock an additional Control" -#~ msgstr "Van CapsLock een extra Ctrl maken" - #~ msgid "Norwegian" #~ msgstr "Noors" @@ -2819,10 +3167,6 @@ msgstr "qwertz" #~ msgid "Right Alt key changes group" #~ msgstr "Rechter Alt-toets verandert de groep" -# BUG Alt ipv Alt key -#~ msgid "Right Alt switches group while pressed" -#~ msgstr "Rechter Alt wisselt de groep gedurende het indrukken" - #~ msgid "Right Control key works as Right Alt" #~ msgstr "Rechter Ctrl-toets doet hetzelfde als de rechter Alt-toets" @@ -2832,9 +3176,6 @@ msgstr "qwertz" #~ msgid "Right Shift key changes group" #~ msgstr "Rechter Shift-toets verandert de groep" -#~ msgid "Scroll Lock changes group" -#~ msgstr "ScrollLock verandert de groep" - #~ msgid "Scroll_Lock LED shows alternative group" #~ msgstr "ScrollLock-lampje toont alternatieve groep" diff --git a/xorg-server/xkbdata.src/po/ru.po b/xorg-server/xkbdata.src/po/ru.po index 98fd37bcc..7765d7d84 100644 --- a/xorg-server/xkbdata.src/po/ru.po +++ b/xorg-server/xkbdata.src/po/ru.po @@ -1,18 +1,24 @@ -# Copyright (C) 2002 Free Software Foundation, Inc. +# translation of xkeyboard-config-1.6.99.ru.po to Russian +# Copyright (C) 2002, 2009 Free Software Foundation, Inc. # Sergey V. Udaltsov<svu@users.sourceforge.net> +# This file is distributed under the same license as the xkeyboard-config package. +# # Sergey E Kvyato <kvantos@plotinka.ru>, 2006. -# +# Nickolay V. Shmyrev <nshmyrev@yandex.ru>, 2006. +# Yuri Kozlov <yuray@komyakino.ru>, 2009. msgid "" msgstr "" -"Project-Id-Version: xfree86_xkb_xml 0.1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2006-11-28 00:34+0300\n" -"PO-Revision-Date: 2006-11-28 16:17+0000\n" -"Last-Translator: Nickolay V. Shmyrev <nshmyrev@yandex.ru>\n" -"Language-Team: <gnome-cyr@gnome.org>\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-17 20:10+0400\n" +"Last-Translator: Yuri Kozlov <yuray@komyakino.ru>\n" +"Language-Team: Russian <gnu@mx.ru>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 1.11.4\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" #: ../rules/base.xml.in.h:1 msgid "(F)" @@ -31,132 +37,132 @@ msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(УÑтарело) ÐльтернативнаÑ, иÑключить Ñпециальные клавиши (dead keys)" #: ../rules/base.xml.in.h:5 -msgid "(Legacy) Dvorak" -msgstr "(УÑтарело) Dvorak" - -#: ../rules/base.xml.in.h:6 msgid "101/104 key Compatible" msgstr "CовмеÑÑ‚Ð¸Ð¼Ð°Ñ c 101/104 кнопочной" -#: ../rules/base.xml.in.h:7 ../rules/sun.xml.in.h:2 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "pc101, qwerty, запÑтаÑ, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:8 ../rules/sun.xml.in.h:3 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "pc101, qwerty, запÑтаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:9 ../rules/sun.xml.in.h:4 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "pc101, qwerty, точка, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:10 ../rules/sun.xml.in.h:5 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "pc101, qwerty, точка, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:11 ../rules/sun.xml.in.h:6 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "pc101, qwertz, запÑтаÑ, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:12 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "pc101, qwertz, запÑтаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:13 ../rules/sun.xml.in.h:7 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "pc101, qwertz, точка, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:14 ../rules/sun.xml.in.h:8 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "pc101, qwertz, точка, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:15 ../rules/sun.xml.in.h:9 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "pc102, qwerty, запÑтаÑ, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:16 ../rules/sun.xml.in.h:10 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "pc102, qwerty, запÑтаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:17 ../rules/sun.xml.in.h:11 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "pc102, qwerty, точка, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:18 ../rules/sun.xml.in.h:12 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "pc102, qwerty, точка, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:19 ../rules/sun.xml.in.h:13 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "pc102, qwertz, запÑтаÑ, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:20 ../rules/sun.xml.in.h:14 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "pc102, qwertz, запÑтаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:21 ../rules/sun.xml.in.h:15 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "pc102, qwertz, точка, Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:22 ../rules/sun.xml.in.h:16 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "pc102, qwertz, точка, иÑключить Ñпециальные клавиши (dead keys)" +#: ../rules/base.xml.in.h:22 +msgid "2" +msgstr "2" + #: ../rules/base.xml.in.h:23 +msgid "4" +msgstr "4" + +#: ../rules/base.xml.in.h:24 +msgid "5" +msgstr "5" + +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:24 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:25 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech Wireless Desktop RFKB-23" -#: ../rules/base.xml.in.h:26 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ ACPI" -#: ../rules/base.xml.in.h:27 +#: ../rules/base.xml.in.h:29 +msgid "ATM/phone-style" +msgstr "в Ñтиле банкоматной/телефонной" + +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:28 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:29 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:30 -msgid "Acer TravelMate 800" -msgstr "Acer TravelMate 800" - -#: ../rules/base.xml.in.h:31 -msgid "Add the EuroSign to the 2 key." -msgstr "Добавить знак Евро к клавише 2." - -#: ../rules/base.xml.in.h:32 -msgid "Add the EuroSign to the 5 key." -msgstr "Добавить знак Евро к клавише 5." - #: ../rules/base.xml.in.h:33 -msgid "Add the EuroSign to the E key." -msgstr "Добавить знак Евро к клавише E." +msgid "Acer Laptop" +msgstr "Ðоутбук Acer" #: ../rules/base.xml.in.h:34 -msgid "Add the standard behavior to Menu key." -msgstr "Ðазначить обыкновенное поведение на клавишу Menu" +msgid "Add the standard behavior to Menu key" +msgstr "Добавить обыкновенное поведение на клавишу Menu" #: ../rules/base.xml.in.h:35 -msgid "Adding the EuroSign to certain keys" -msgstr "Добавить знак Евро к некоторым клавишам" +msgid "Adding Esperanto circumflexes (supersigno)" +msgstr "Добавление диакритичеÑких знаков ÑÑперанто" #: ../rules/base.xml.in.h:36 -msgid "Adding the nobreakspace keysym to space key" -msgstr "Добавить код запрета разрыва к коду пробела" +msgid "Adding EuroSign to certain keys" +msgstr "Добавление знака евро к некоторым клавишам" #: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" @@ -183,2265 +189,2606 @@ msgid "Albania" msgstr "ÐлбаниÑ" #: ../rules/base.xml.in.h:43 -msgid "Alt and Meta are on the Alt keys (default)." -msgstr "Alt и Meta на клавишах Alt (по умолчанию)." +msgid "Alt and Meta are on Alt keys" +msgstr "Alt и Meta на клавишах Alt" #: ../rules/base.xml.in.h:44 -msgid "Alt is mapped to the right Win-key and Super to Menu." -msgstr "Alt ÑоответÑтвует правой клавише Win, а Super - Menu." +msgid "Alt is mapped to Right Win, Super to Menu" +msgstr "Alt ÑоответÑтвует правой клавише Win, а Super - Menu" #: ../rules/base.xml.in.h:45 -msgid "Alt+CapsLock changes group." -msgstr "Клавиши Alt и Caps Lock, нажатые вмеÑте, менÑÑŽÑ‚ группу." +msgid "Alt+CapsLock" +msgstr "Alt+CapsLock" #: ../rules/base.xml.in.h:46 -msgid "Alt+Ctrl changes group." -msgstr "Alt+Ctrl менÑÑŽÑ‚ группу." +msgid "Alt+Ctrl" +msgstr "Alt+Ctrl" #: ../rules/base.xml.in.h:47 -msgid "Alt+Shift changes group." -msgstr "Alt+Shift менÑÑŽÑ‚ группу." +msgid "Alt+Shift" +msgstr "Alt+Shift" #: ../rules/base.xml.in.h:48 +msgid "Alt+Space" +msgstr "Alt+Пробел" + +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:49 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" -msgstr "Клавиши Alt/Win" +msgstr "Поведение клавиши Alt/Win" -#: ../rules/base.xml.in.h:50 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "ÐльтернативнаÑ" -#: ../rules/base.xml.in.h:51 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "ÐÐ»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð’Ð¾ÑточнаÑ" -#: ../rules/base.xml.in.h:52 +#: ../rules/base.xml.in.h:53 +msgid "Alternative Phonetic" +msgstr "ÐÐ»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð¤Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "ÐÐ»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ð¼ÐµÐ¶Ð´ÑƒÐ½Ð°Ñ€Ð¾Ð´Ð½Ð°Ñ (Ð±Ñ‹Ð²ÑˆÐ°Ñ us_intl)" -#: ../rules/base.xml.in.h:53 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "ÐльтернативнаÑ, Ñпециальные клавиши (dead keys) Sun" -#: ../rules/base.xml.in.h:54 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "ÐльтернативнаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:55 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "ÐльтернативнаÑ, только latin-9" -#: ../rules/base.xml.in.h:56 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "Ðнд" -#: ../rules/base.xml.in.h:57 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Ðндорра" -#: ../rules/base.xml.in.h:58 +#: ../rules/base.xml.in.h:60 +msgid "Any Alt key" +msgstr "Ð›ÑŽÐ±Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt" + +#: ../rules/base.xml.in.h:61 +msgid "Any Win key" +msgstr "Ð›ÑŽÐ±Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win" + +#: ../rules/base.xml.in.h:62 +msgid "Any Win key (while pressed)" +msgstr "Ð›ÑŽÐ±Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win (на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ)" + +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Вариант Ñ Ð°Ð¿Ð¾Ñтрофом (')" -#: ../rules/base.xml.in.h:59 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:60 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Ðоутбук Apple" -#: ../rules/base.xml.in.h:61 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ðра" -#: ../rules/base.xml.in.h:62 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "ÐрабÑкаÑ" -#: ../rules/base.xml.in.h:63 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Ðрм" -#: ../rules/base.xml.in.h:64 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "ÐрмениÑ" -#: ../rules/base.xml.in.h:65 +#: ../rules/base.xml.in.h:70 +msgid "Asturian variant with bottom-dot H and bottom-dot L" +msgstr "ÐÑтурлеонÑкий вариант Ñ Ð½Ð¸Ð¶Ð½Ð¸Ð¼Ð¸ точками у H и L" + +#: ../rules/base.xml.in.h:71 +msgid "Asus Laptop" +msgstr "Ðоутбук Asus" + +#: ../rules/base.xml.in.h:72 +msgid "At bottom left" +msgstr "Снизу Ñлева" + +#: ../rules/base.xml.in.h:73 +msgid "At left of 'A'" +msgstr "Слева от 'A'" + +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Ðзер" -#: ../rules/base.xml.in.h:66 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Ðзербайджан" -#: ../rules/base.xml.in.h:67 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" -msgstr "Azona RF2300 беÑÐ¿Ñ€Ð¾Ð²Ð¾Ð´Ð½Ð°Ñ \"интернет\" клавиатура" +msgstr "Azona RF2300 wireless Internet Keyboard" -#: ../rules/base.xml.in.h:68 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:69 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:70 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:71 +#: ../rules/base.xml.in.h:80 +msgid "BTC 6301URF" +msgstr "BTC 6301URF" + +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:72 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:73 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:74 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:75 +#: ../rules/base.xml.in.h:85 +msgid "BTC 9116U Mini Wireless Internet and Gaming" +msgstr "BTC 9116U Mini Wireless Internet and Gaming" + +#: ../rules/base.xml.in.h:86 +msgid "Baltic+" +msgstr "Baltic+" + +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Бан" -#: ../rules/base.xml.in.h:76 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Бангладеш" -#: ../rules/base.xml.in.h:77 ../rules/sun.xml.in.h:22 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "БашкирÑкаÑ" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Бельг" -#: ../rules/base.xml.in.h:78 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "БелоруÑÑиÑ" -#: ../rules/base.xml.in.h:79 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "БельгиÑ" -#: ../rules/base.xml.in.h:80 +#: ../rules/base.xml.in.h:93 +msgid "BenQ X-Touch" +msgstr "BenQ X-Touch" + +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:81 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:82 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "БенгальÑкаÑ" -#: ../rules/base.xml.in.h:83 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "БенгальÑÐºÐ°Ñ ÐŸÑ€Ð¾Ð±Ð°Ñ‚" -#: ../rules/base.xml.in.h:84 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Бепо, ÑргономичнаÑ, Ð¿Ð¾Ñ…Ð¾Ð¶Ð°Ñ Ð½Ð° Dvorak" -#: ../rules/base.xml.in.h:85 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Бепо, ÑргономичнаÑ, Ð¿Ð¾Ñ…Ð¾Ð¶Ð°Ñ Ð½Ð° Dvorak, только latin-9" -#: ../rules/base.xml.in.h:86 ../rules/sun.xml.in.h:24 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Болг" -#: ../rules/base.xml.in.h:87 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Бут" -#: ../rules/base.xml.in.h:88 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Бутан" -#: ../rules/base.xml.in.h:89 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "БиблейÑкий иврит (Tiro)" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "БоÑн" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Бел" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "БоÑÐ½Ð¸Ñ Ð¸ Герцеговина" -#: ../rules/base.xml.in.h:93 -msgid "Both Alt keys together change group." -msgstr "Обе клавиши Alt, нажатые вмеÑте, менÑÑŽÑ‚ группу." - -#: ../rules/base.xml.in.h:94 -msgid "Both Ctrl keys together change group." -msgstr "Обе клавиши Ctrl, нажатые вмеÑте, менÑÑŽÑ‚ группу." +#: ../rules/base.xml.in.h:107 +msgid "Both Alt keys together" +msgstr "Обе клавиши Alt, нажатые вмеÑте" -#: ../rules/base.xml.in.h:95 -msgid "Both Shift keys together change group." -msgstr "Обе клавиши Shift, нажатые вмеÑте, менÑÑŽÑ‚ группу." +#: ../rules/base.xml.in.h:108 +msgid "Both Ctrl keys together" +msgstr "Обе клавиши Ctrl, нажатые вмеÑте" -#: ../rules/base.xml.in.h:96 -msgid "Both Win-keys switch group while pressed." -msgstr "ÐšÐ°Ð¶Ð´Ð°Ñ Ð¸Ð· Win клавиш переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:109 +msgid "Both Shift keys together" +msgstr "Обе клавиши Shift, нажатые вмеÑте" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Браз" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:111 +msgid "Braille" +msgstr "БрайлÑ" + +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "БразилиÑ" -#: ../rules/base.xml.in.h:99 -msgid "Brazilian ABNT2" -msgstr "ABNT2" +#: ../rules/base.xml.in.h:113 +msgid "Breton" +msgstr "БретонÑкаÑ" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:114 +msgid "Brl" +msgstr "Brl" + +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internet Keyboard" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "БолгариÑ" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:118 +msgid "CRULP" +msgstr "CRULP" + +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Камбоджа" -#: ../rules/base.xml.in.h:104 ../rules/sun.xml.in.h:29 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Кан" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Канада" -#: ../rules/base.xml.in.h:106 -msgid "Caps Lock is Compose." -msgstr "Клавиша Caps Lock ÑоответÑтвует клавише Compose." +#: ../rules/base.xml.in.h:122 +msgid "Caps Lock" +msgstr "Caps Lock" -#: ../rules/base.xml.in.h:107 -msgid "CapsLock LED shows alternative group." -msgstr "Индикатор CapsLock отображает другую группу." +#: ../rules/base.xml.in.h:123 +msgid "CapsLock" +msgstr "CapsLock" -#: ../rules/base.xml.in.h:108 -msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock." -msgstr "" -"ДейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift приоÑтанавливает дейÑтвие CapsLock." +#: ../rules/base.xml.in.h:124 +msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" +msgstr "CapsLock (на первую раÑкладку), Shift+CapsLock (на поÑледнюю раÑкладку)" -#: ../rules/base.xml.in.h:109 -msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock." -msgstr "ДейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift не влиÑет на CapsLock." +#: ../rules/base.xml.in.h:125 +msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" +msgstr "CapsLock (пока нажата), Alt+CapsLock выполнÑет первоначальную функцию capslock" -#: ../rules/base.xml.in.h:110 -msgid "CapsLock just locks the Shift modifier." -msgstr "ПроÑто блокирует модификатор Shift." +#: ../rules/base.xml.in.h:126 +msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" +msgstr "CapsLock дейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift приоÑтанавливает дейÑтвие CapsLock" -#: ../rules/base.xml.in.h:111 ../rules/sun.xml.in.h:33 -msgid "CapsLock key behavior" -msgstr "Клавиша Caps Lock" +#: ../rules/base.xml.in.h:127 +msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" +msgstr "CapsLock дейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift не влиÑет на CapsLock" -#: ../rules/base.xml.in.h:112 -msgid "CapsLock key changes group." -msgstr "Клавиша CapsLock менÑет группу." +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock выключен" -#: ../rules/base.xml.in.h:113 -msgid "CapsLock toggles Shift so all keys are affected." -msgstr "" -"CapsLock включает Shift, таким образом что, он дейÑтвует Ñразу на вÑе " -"клавиши." +#: ../rules/base.xml.in.h:129 +msgid "CapsLock key behavior" +msgstr "Поведение клавиши CapsLock" -#: ../rules/base.xml.in.h:114 -msgid "CapsLock toggles normal capitalization of alphabetic characters." -msgstr "Включает обычную капитализацию Ñимволов алфавита." +#: ../rules/base.xml.in.h:130 +msgid "CapsLock toggles Shift so all keys are affected" +msgstr "CapsLock включает Shift, таким образом что, он дейÑтвует Ñразу на вÑе клавиши" -#: ../rules/base.xml.in.h:115 -msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock." -msgstr "" -"Включает внутреннюю капитализацию. Shift приоÑтанавливает дейÑтвие CapsLock." +#: ../rules/base.xml.in.h:131 +msgid "CapsLock toggles normal capitalization of alphabetic characters" +msgstr "CapsLock включает обычную капитализацию Ñимволов алфавита" -#: ../rules/base.xml.in.h:116 -msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock." -msgstr "Включает внутреннюю капитализацию. Shift не влиÑет на CapsLock." +#: ../rules/base.xml.in.h:132 +msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" +msgstr "CapsLock включает внутреннюю капитализацию. Shift приоÑтанавливает дейÑтвие CapsLock" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:133 +msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" +msgstr "CapsLock включает внутреннюю капитализацию. Shift не влиÑет на CapsLock" + +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" -msgstr "КаталонÑкий вариант Ñо Ñредней L" +msgstr "КаталонÑкий вариант Ñ Ñ‚Ð¾Ñ‡ÐºÐ¾Ð¹ в L поÑередине" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:135 +msgid "Cedilla" +msgstr "Седиль" + +#: ../rules/base.xml.in.h:136 msgid "Che" -msgstr "Швейц." +msgstr "Швейц" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:137 +msgid "Cherokee" +msgstr "Чероки" + +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (альтернативный вариант)" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-Hub" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:142 +msgid "Cherry CyMotion Expert" +msgstr "Cherry CyMotion Expert" + +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:144 +msgid "Cherry CyMotion Master XPress" +msgstr " Cherry CyMotion Master Linux" + +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internet Keyboard" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:147 +msgid "Chicony KU-0108" +msgstr "Chicony KU-0108" + +#: ../rules/base.xml.in.h:148 +msgid "Chicony KU-0420" +msgstr "Chicony KU-0420" + +#: ../rules/base.xml.in.h:149 +msgid "China" +msgstr "Китай" + +#: ../rules/base.xml.in.h:150 +msgid "Chuvash" +msgstr "ЧувашиÑ" + +#: ../rules/base.xml.in.h:151 +msgid "Chuvash Latin" +msgstr "ЧувашиÑ, Латиница" + +#: ../rules/base.xml.in.h:152 +msgid "Classic" +msgstr "КлаÑÑичеÑкаÑ" + +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "КлаÑÑичеÑÐºÐ°Ñ Dvorak" -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:154 +msgid "Classmate PC" +msgstr "Classmate PC" + +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:156 +msgid "Colemak" +msgstr "Colemak" + +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access Keyboard" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internet Keyboard (13 клавиш)" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internet Keyboard (18 клавиш)" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internet Keyboard (7 клавиш)" -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq Keyboard" -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Положение клавиши Compose" -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Конго, ДемократичеÑÐºÐ°Ñ Ñ€ÐµÑпублика" -#: ../rules/base.xml.in.h:134 -msgid "Control is mapped to the Win-keys (and the usual Ctrl keys)." -msgstr "Control иÑпользуетÑÑ Ð² качеÑтве клавиш Win (и как обычный Control)." +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Control + Alt + Backspace" -#: ../rules/base.xml.in.h:135 -msgid "Croatia" -msgstr "ХорватиÑ" +#: ../rules/base.xml.in.h:165 +msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" +msgstr "Control иÑпользуетÑÑ Ð² качеÑтве клавиш Alt, Alt иÑпользуетÑÑ Ð² качеÑтве клавиш Win" -#: ../rules/base.xml.in.h:136 -msgid "Ctrl key at bottom left" -msgstr "Клавиша Ctrl Ñнизу Ñлева" +#: ../rules/base.xml.in.h:166 +msgid "Control is mapped to Win keys (and the usual Ctrl keys)" +msgstr "Control иÑпользуетÑÑ Ð² качеÑтве клавиш Win (и как обычный Control)" -#: ../rules/base.xml.in.h:137 -msgid "Ctrl key at left of 'A'" -msgstr "Клавиша Ctrl Ñлева от 'Ф'" +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "КрымÑкотатарÑÐºÐ°Ñ (Dobruca-1 Q)" + +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "КрымÑкотатарÑÐºÐ°Ñ (Dobruca-2 Q)" + +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "КрымÑкотатарÑÐºÐ°Ñ (Ñ‚ÑƒÑ€ÐµÑ†ÐºÐ°Ñ Alt-Q)" + +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "КрымÑкотатарÑÐºÐ°Ñ (Ñ‚ÑƒÑ€ÐµÑ†ÐºÐ°Ñ F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "КрымÑкотатарÑÐºÐ°Ñ (Ñ‚ÑƒÑ€ÐµÑ†ÐºÐ°Ñ Q)" + +#: ../rules/base.xml.in.h:173 +msgid "Croatia" +msgstr "ХорватиÑ" + +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Положение клавиши Ctrl" -#: ../rules/base.xml.in.h:139 -msgid "Ctrl+Shift changes group." -msgstr "Ctrl+Shift менÑÑŽÑ‚ группу." +#: ../rules/base.xml.in.h:175 +msgid "Ctrl+Shift" +msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Кириллица" -#: ../rules/base.xml.in.h:141 ../rules/sun.xml.in.h:39 +#: ../rules/base.xml.in.h:177 +msgid "Cyrillic with guillemets" +msgstr "Кириллица Ñ ÐºÐ°Ð²Ñ‹Ñ‡ÐºÐ°Ð¼Ð¸ ёлочками" + +#: ../rules/base.xml.in.h:178 +msgid "Cyrillic, Z and ZHE swapped" +msgstr "Кириллица, З и Ж переÑтавлены меÑтами" + +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Чех" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "ЧехиÑ" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "ДРК" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:145 ../rules/sun.xml.in.h:42 +#: ../rules/base.xml.in.h:184 +msgid "Dan" +msgstr "Дан" + +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Спец. Ñимвол Dead acute" -#: ../rules/base.xml.in.h:146 ../rules/sun.xml.in.h:43 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Спец. Ñимвол Dead grave acute" -#: ../rules/base.xml.in.h:147 -msgid "Default numpad keys." +#: ../rules/base.xml.in.h:187 +msgid "Default numeric keypad keys" msgstr "Клавиши цифровой клавиатуры по умолчанию" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-клавишный PC" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Ðоутбуки Dell Inspiron Ñерий 6xxx/8xxx" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:191 +msgid "Dell Laptop/notebook Precision M series" +msgstr "Ðоутбуки Dell Precision Ñерий M" + +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Ðоутбук Dell Ñерии Latitude" -#: ../rules/base.xml.in.h:152 -msgid "Dell USB Multimedia Keybard" +#: ../rules/base.xml.in.h:193 +msgid "Dell Precision M65" +msgstr "Dell Precision M65" + +#: ../rules/base.xml.in.h:194 +msgid "Dell SK-8125" +msgstr "Dell SK-8125" + +#: ../rules/base.xml.in.h:195 +msgid "Dell SK-8135" +msgstr "Dell SK-8135" + +#: ../rules/base.xml.in.h:196 +msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB Multimedia Keyboard" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "ДаниÑ" -#: ../rules/base.xml.in.h:154 ../rules/sun.xml.in.h:44 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Ðем" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa Wireless Desktop Keyboard" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Модели Diamond 9801/9802" -#: ../rules/base.xml.in.h:157 ../rules/sun.xml.in.h:46 -msgid "Dnk" -msgstr "Дат" - -#: ../rules/base.xml.in.h:158 ../rules/sun.xml.in.h:48 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:159 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorak, польÑкие кавычки на клавише \"1/!\"" +#: ../rules/base.xml.in.h:202 +msgid "Dvorak (UK Punctuation)" +msgstr "Дворак (английÑÐºÐ°Ñ Ñ€Ð°ÑÑтановка)" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:203 +msgid "Dvorak international" +msgstr "Дворак, международнаÑ" + +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Дворак, польÑкие кавычки на клавише 1" + +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" -msgstr "Dvorak, польÑкие кавычки на клавишах Ñ ÐºÐ°Ð²Ñ‹Ñ‡ÐºÐ°Ð¼Ð¸" +msgstr "Дворак, польÑкие кавычки на клавишах Ñ ÐºÐ°Ð²Ñ‹Ñ‡ÐºÐ°Ð¼Ð¸" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:206 +msgid "E" +msgstr "E" + +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "ВоÑточный" -#: ../rules/base.xml.in.h:162 ../rules/sun.xml.in.h:49 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "ИÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:209 +msgid "Enable extra typographic characters" +msgstr "Включить дополнительные типографÑкие Ñимволы" + +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "ÐнглийÑкаÑ" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enter на цифровой клавиатуре" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "ÐÑп" -#: ../rules/base.xml.in.h:165 ../rules/sun.xml.in.h:50 +#: ../rules/base.xml.in.h:214 +msgid "Ergonomic" +msgstr "Ergonomic" + +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "ИÑп" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "ÐÑперанто" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "ÐÑÑ‚" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "ÐÑтониÑ" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:219 +msgid "Eth" +msgstr "Ðфи" + +#: ../rules/base.xml.in.h:220 +msgid "Ethiopia" +msgstr "ÐфиопиÑ" + +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" -msgstr "Клавиатура управлÑÐµÐ¼Ð°Ñ Ð¿Ð¾ÑредÑтвом Evdev" +msgstr "Клавиатура, управлÑÐµÐ¼Ð°Ñ Ð¿Ð¾ÑредÑтвом Evdev" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ðве" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "РаÑширеннаÑ" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "РаÑширеннаÑ, клавиши Win" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "РаÑширенные функции Backslash" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Вариант Ñ F" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:228 +msgid "FL90" +msgstr "FL90" + +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Фар" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "ОÑтрова Фаро" -#: ../rules/base.xml.in.h:177 ../rules/sun.xml.in.h:51 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Фин" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "ФинлÑндиÑ" -#: ../rules/base.xml.in.h:179 ../rules/sun.xml.in.h:53 +#. This assumes the KP_ abstract symbols are actually useful for some apps +#. The description needs to be rewritten +#: ../rules/base.xml.in.h:235 +msgid "Four-level key with abstract separators" +msgstr "Четырёх-ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ñ Ð°Ð±Ñтрактными разделителÑми" + +#: ../rules/base.xml.in.h:236 +msgid "Four-level key with comma" +msgstr "Четырёх-ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ñ Ð·Ð°Ð¿Ñтой" + +#: ../rules/base.xml.in.h:237 +msgid "Four-level key with dot" +msgstr "Четырёх-ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ñ Ñ‚Ð¾Ñ‡ÐºÐ¾Ð¹" + +#: ../rules/base.xml.in.h:238 +msgid "Four-level key with dot, latin-9 restriction" +msgstr "Четырёх-ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ñ Ñ‚Ð¾Ñ‡ÐºÐ¾Ð¹, ограничена latin-9" + +#: ../rules/base.xml.in.h:239 +msgid "Four-level key with momayyez" +msgstr "Четырёх-ÑƒÑ€Ð¾Ð²Ð½ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ñ momayyez" + +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Фр" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "ФранциÑ" -#: ../rules/base.xml.in.h:181 ../rules/sun.xml.in.h:55 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "ФранцузÑкаÑ" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "ФранцузÑÐºÐ°Ñ (Macintosh)" -#: ../rules/base.xml.in.h:183 ../rules/sun.xml.in.h:56 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "ФранцузÑÐºÐ°Ñ (унаÑледованнаÑ)" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "ФранцузÑÐºÐ°Ñ Dvorak" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "ФранцузÑкаÑ, Ñпециальные клавиши (dead keys) Sun" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "ФранцузÑкаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:248 +msgid "Fujitsu-Siemens Computers AMILO laptop" +msgstr "Ðоутбук Fujitsu-Siemens Computers AMILO" + +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Фула" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "Брит" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Га" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" -msgstr "Обычный 101-клавишный PC" +msgstr "Обычный 101-клавишный ПК" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" -msgstr "Обычный 102-клавишный PC" +msgstr "Обычный 102-клавишный (межд) ПК" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" -msgstr "Обычный 104-клавишный PC" +msgstr "Обычный 104-клавишный ПК" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" -msgstr "Обычный 105-клавишный (Инт.) РС" +msgstr "Обычный 105-клавишный (межд) ПК" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Груз" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "ГрузиÑ" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:263 +msgid "Georgian" +msgstr "ГрузинÑкаÑ" + +#: ../rules/base.xml.in.h:264 +msgid "Georgian AZERTY Tskapo" +msgstr "ГрузинÑÐºÐ°Ñ AZERTY Tskapo" + +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "ÐÐµÐ¼ÐµÑ†ÐºÐ°Ñ (Macintosh)" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "ÐемецкаÑ, Ñпециальные клавиши (dead keys) Sun" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "ÐемецкаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "ГерманиÑ" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Ган" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Гана" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Гре" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "ГрециÑ" -#: ../rules/base.xml.in.h:208 ../rules/sun.xml.in.h:58 -msgid "Group Shift/Lock behavior" -msgstr "Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ Ñмены раÑкладки" +#: ../rules/base.xml.in.h:273 +msgid "Group toggle on multiply/divide key" +msgstr "Переключение групп по клавише умножениÑ/делениÑ" + +#: ../rules/base.xml.in.h:274 +msgid "Gui" +msgstr "Гви" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:275 +msgid "Guinea" +msgstr "ГвинеÑ" + +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Гуджарати" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Гурмукхи" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:278 +msgid "Gurmukhi Jhelum" +msgstr "Гурмукхи Jhelum" + +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Гирашн" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:280 +msgid "Happy Hacking Keyboard" +msgstr "Happy Hacking Keyboard" + +#: ../rules/base.xml.in.h:281 +msgid "Happy Hacking Keyboard for Mac" +msgstr "Happy Hacking Keyboard Ð´Ð»Ñ Mac" + +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Хауза" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internet Keyboard" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:221 -msgid "Hewlett-Packard SK-2501 Multimedia Keyboard" -msgstr "Hewlett-Packard SK-2501 Multimedia Keyboard" +#: ../rules/base.xml.in.h:291 +msgid "Hewlett-Packard Pavilion dv5" +msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:222 -msgid "Hewlett-Packard SK-2505 Internet Keyboard" -msgstr "Hewlett-Packard SK-2505 Internet Keyboard" +#: ../rules/base.xml.in.h:292 +msgid "Hewlett-Packard SK-250x Multimedia Keyboard" +msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:293 +msgid "Hewlett-Packard nx9020" +msgstr "Hewlett-Packard nx9020" + +#: ../rules/base.xml.in.h:294 +msgid "Hexadecimal" +msgstr "ШеÑтнадцатеричнаÑ" + +#: ../rules/base.xml.in.h:295 +msgid "Hindi Bolnagri" +msgstr "Хинди Болнагри" + +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Хинди Wx" + +#: ../rules/base.xml.in.h:297 +msgid "Homophonic" +msgstr "ОмофоничеÑкаÑ" + +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Хорв" -#: ../rules/base.xml.in.h:225 ../rules/sun.xml.in.h:59 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Венг" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "ВенгриÑ" -#: ../rules/base.xml.in.h:227 -msgid "Hyper is mapped to the Win-keys." +#: ../rules/base.xml.in.h:302 +msgid "Hyper is mapped to Win-keys" msgstr "Hyper ÑоответÑтвует клавишам Win" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:230 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:231 -msgid "IBM Rapid Access II (alternate option)" -msgstr "IBM Rapid Access II (альтернативный вариант)" +#: ../rules/base.xml.in.h:306 +msgid "IBM Space Saver" +msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" -msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" +msgstr "IBM ThinkPad 560Z/600/600E/A22E, международный" -#: ../rules/base.xml.in.h:234 ../rules/sun.xml.in.h:61 +#: ../rules/base.xml.in.h:309 +msgid "IBM ThinkPad R60/T60/R61/T61" +msgstr "IBM ThinkPad R60/T60/R61/T61" + +#: ../rules/base.xml.in.h:310 +msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" +msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" + +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "Ð”Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð°Ñ ISO" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "ИÑландиÑ" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:314 +msgid "Include dead tilde" +msgstr "Включить \"Ñпециальную\" тильду" + +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Инд" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "ИндиÑ" -#: ../rules/base.xml.in.h:239 ../rules/sun.xml.in.h:62 +#: ../rules/base.xml.in.h:317 +msgid "International (AltGr dead keys)" +msgstr "МеждународнаÑ, AltGr и Ñпец. клавишами ( dead keys)" + +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "МеждународнаÑ, Ñо Ñпец. клавишами (dead keys)" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "ИннуитÑкаÑ" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Иран" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Ирак" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "ИрландиÑ" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Ирл" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "ПерÑ" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Ирк" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "ИÑл" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Ивр" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Израиль" -#: ../rules/base.xml.in.h:250 ../rules/sun.xml.in.h:63 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ит" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "ИталиÑ" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "ЯпониÑ" -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx Series)" -#: ../rules/base.xml.in.h:254 -msgid "Japanese 106-key" -msgstr "ЯпонÑÐºÐ°Ñ 106-клавишнаÑ" +#: ../rules/base.xml.in.h:333 +msgid "Japanese keyboard options" +msgstr "ÐаÑтройки ÑпонÑкой клавиатуры" -#: ../rules/base.xml.in.h:255 ../rules/sun.xml.in.h:66 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Яп" -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:335 +msgid "Kalmyk" +msgstr "КалмыкÑкаÑ" + +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Кана" -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:337 +msgid "Kana Lock key is locking" +msgstr "Кана блокируетÑÑ ÐºÐ»Ð°Ð²Ð¸ÑˆÐµÐ¹ Lock" + +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Каннада" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "КашубÑкий" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Каз" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "КазахÑкий Ñ Ð ÑƒÑÑким" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "КазахÑтан" -#: ../rules/base.xml.in.h:262 -msgid "Keypad" -msgstr "С доп. панелью" +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "ÐšÐ¾Ð¼Ð±Ð¸Ð½Ð°Ñ†Ð¸Ñ ÐºÐ»Ð°Ð²Ð¸Ñˆ Ð´Ð»Ñ Ð¿Ñ€ÐµÑ€Ñ‹Ð²Ð°Ð½Ð¸Ñ Ñ€Ð°Ð±Ð¾Ñ‚Ñ‹ X-Ñервера" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:344 +msgid "Key to choose 3rd level" +msgstr "Клавиша Ð´Ð»Ñ Ð²Ñ‹Ð±Ð¾Ñ€Ð° 3-го уровнÑ" + +#: ../rules/base.xml.in.h:345 +msgid "Key(s) to change layout" +msgstr "Клавиша(Ñ‹) Ð´Ð»Ñ Ñмены раÑкладки" + +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Кир" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Кхм" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:349 +msgid "Komi" +msgstr "Коми" + +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Кор" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "РеÑпублика КореÑ" -#: ../rules/base.xml.in.h:267 -msgid "Korean 106-key" -msgstr "КорейÑÐºÐ°Ñ 106-клавишнаÑ" - -#: ../rules/base.xml.in.h:268 -msgid "Kotoistus" -msgstr "КотоиÑтуÑ" +#: ../rules/base.xml.in.h:352 +msgid "Ktunaxa" +msgstr "Кутенай" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "КурдÑкаÑ, (F)" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "КурдÑкаÑ, ÐрабÑко-латинÑкаÑ" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "КурдÑкаÑ, Латиница Alt-Q" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "КурдÑкаÑ, Латиница Q" -#: ../rules/base.xml.in.h:273 -msgid "Kyr" -msgstr "Кыр" - -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "КиргизиÑ" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "ЛатÐм" -#: ../rules/base.xml.in.h:276 -msgid "LCtrl+LShift changes group." -msgstr "LCtrl+LShift менÑÑŽÑ‚ группу." +#: ../rules/base.xml.in.h:359 +msgid "LEKP" +msgstr "LEKP" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:360 +msgid "LEKPa" +msgstr "LEKPa" + +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Лао" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "ЛаоÑ" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Клавиатура Ð´Ð»Ñ Ð½Ð¾ÑƒÑ‚Ð±ÑƒÐºÐ¾Ð² Compaq (например Armada)" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "\"Интернет\" клавиатура Ð´Ð»Ñ Ð½Ð¾ÑƒÑ‚Ð±ÑƒÐºÐ¾Ð² Compaq (например Presario)" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Ðоутбуки eMachines m68xx" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "ЛатинÑкаÑ" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "ЛатиноамериканÑкаÑ" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" -msgstr "ЛатинÑÐºÐ°Ñ Unicode" +msgstr "ЛатинÑÐºÐ°Ñ Ð®Ð½Ð¸ÐºÐ¾Ð´Ð½Ð°Ñ" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" -msgstr "ЛатинÑÐºÐ°Ñ Unicode qwerty" +msgstr "ЛатинÑÐºÐ°Ñ Ð®Ð½Ð¸ÐºÐ¾Ð´Ð½Ð°Ñ qwerty" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "ЛатинÑÐºÐ°Ñ qwerty" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:371 +msgid "Latin unicode" +msgstr "ЛатинÑÐºÐ°Ñ ÑŽÐ½Ð¸ÐºÐ¾Ð´Ð½Ð°Ñ" + +#: ../rules/base.xml.in.h:372 +msgid "Latin unicode qwerty" +msgstr "ЛатинÑÐºÐ°Ñ ÑŽÐ½Ð¸ÐºÐ¾Ð´Ð½Ð°Ñ qwerty" + +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" -msgstr "ЛатинÑÐºÐ°Ñ Ñ Ñ„Ñ€Ð°Ð½Ñ†ÑƒÐ·Ñкими кавычками" +msgstr "ЛатинÑÐºÐ°Ñ Ñ ÐºÐ°Ð²Ñ‹Ñ‡ÐºÐ°Ð¼Ð¸ ёлочками" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "ЛатвиÑ" -#: ../rules/base.xml.in.h:289 -msgid "Left Alt is swapped with left Win-key." -msgstr "Левый Alt поменÑн меÑтами Ñ Ð»ÐµÐ²Ð¾Ð¹ клавишей Win" +#: ../rules/base.xml.in.h:375 +msgid "Lav" +msgstr "Лат" -#: ../rules/base.xml.in.h:290 -msgid "Left Alt key changes group." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt менÑет группу." +#: ../rules/base.xml.in.h:376 +msgid "Left Alt" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt" -#: ../rules/base.xml.in.h:291 -msgid "Left Alt key switches group while pressed." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:377 +msgid "Left Alt (while pressed)" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt (пока нажата)" -#: ../rules/base.xml.in.h:292 -msgid "Left Ctrl key changes group." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl менÑет группу." +#: ../rules/base.xml.in.h:378 +msgid "Left Alt is swapped with Left Win" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt поменÑна меÑтами Ñ Ð»ÐµÐ²Ð¾Ð¹ клавишей Win" -#: ../rules/base.xml.in.h:293 -msgid "Left Shift key changes group." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift менÑет группу." +#: ../rules/base.xml.in.h:379 +msgid "Left Ctrl" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl" -#: ../rules/base.xml.in.h:294 -msgid "Left Win-key changes group." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win менÑет группу." +#: ../rules/base.xml.in.h:380 +msgid "Left Ctrl+Left Shift" +msgstr "Левый Ctrl+Левый Shift" -#: ../rules/base.xml.in.h:295 -msgid "Left Win-key is Compose." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win ÑоответÑтвует клавише Compose." +#: ../rules/base.xml.in.h:381 +msgid "Left Shift" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift" -#: ../rules/base.xml.in.h:296 -msgid "Left Win-key switches group while pressed." -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:382 +msgid "Left Win" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:383 +msgid "Left Win (to first layout), Right Win/Menu (to last layout)" +msgstr "Ð›ÐµÐ²Ð°Ñ Win (на первую раÑкладку), ÐŸÑ€Ð°Ð²Ð°Ñ Win/Menu (на поÑледнюю раÑкладку)" + +#: ../rules/base.xml.in.h:384 +msgid "Left Win (while pressed)" +msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win (пока нажата)" + +#: ../rules/base.xml.in.h:385 +msgid "Left hand" +msgstr "Ð”Ð»Ñ Ð»ÐµÐ²ÑˆÐµÐ¹" + +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" -msgstr "Dvorak Ð´Ð»Ñ Ð»ÐµÐ²ÑˆÐµÐ¹" +msgstr "Дворак Ð´Ð»Ñ Ð»ÐµÐ²ÑˆÐµÐ¹" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:387 +msgid "Legacy" +msgstr "Legacy" + +#: ../rules/base.xml.in.h:388 +msgid "Legacy Wang 724" +msgstr "Legacy Wang 724" + +#. Actually, with KP_SEPARATOR, as the old keypad(comma) +#: ../rules/base.xml.in.h:390 +msgid "Legacy key with comma" +msgstr "Клавиша Legacy Ñ Ð·Ð°Ð¿Ñтой" + +#: ../rules/base.xml.in.h:391 +msgid "Legacy key with dot" +msgstr "Клавиша Legacy Ñ Ñ‚Ð¾Ñ‡ÐºÐ¾Ð¹" + +#: ../rules/base.xml.in.h:392 +msgid "Less-than/Greater-than" +msgstr "Меньше чем/Больше чем" + +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Литва" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:396 +msgid "Logitech Cordless Desktop (alternate option)" +msgstr "Logitech Cordless Desktop (альтернативный вариант)" + +#: ../rules/base.xml.in.h:397 +msgid "Logitech Cordless Desktop EX110" +msgstr "Logitech Cordless Desktop EX110" + +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:304 -msgid "Logitech Cordless Desktop Pro" -msgstr "Logitech Cordless Desktop Pro" - -#: ../rules/base.xml.in.h:305 -msgid "Logitech Cordless Desktop Pro (alternate option)" -msgstr "Logitech Cordless Desktop Pro (альтернативный вариант)" - -#: ../rules/base.xml.in.h:306 -msgid "Logitech Cordless Desktop Pro (alternate option2)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (альтернативный вариант 2)" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" -msgstr "Дополнительные клавиши Logitech G15 Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ демона G15" +msgstr "Дополнительные клавиши Logitech G15 Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ñлужбы G15" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:405 +msgid "Logitech Generic Keyboard" +msgstr "Logitech Generic Keyboard" + +#: ../rules/base.xml.in.h:406 +msgid "Logitech Internet 350 Keyboard" +msgstr "Logitech Internet 350 Keyboard" + +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internet Keyboard" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator Keyboard" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:409 +msgid "Logitech Media Elite Keyboard" +msgstr "Logitech Media Elite Keyboard" + +#: ../rules/base.xml.in.h:410 +msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" +msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" + +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:412 +msgid "Logitech diNovo Edge Keyboard" +msgstr "Logitech diNovo Edge Keyboard" + +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (модель Y-RB6)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:418 +msgid "Lower Sorbian" +msgstr "Ðижнелужицкий" + +#: ../rules/base.xml.in.h:419 +msgid "Lower Sorbian (qwertz)" +msgstr "Ðижнелужицкий (qwertz)" + +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Лит" -#: ../rules/base.xml.in.h:319 -msgid "Lva" -msgstr "Латв" +#: ../rules/base.xml.in.h:421 +msgid "MESS" +msgstr "MESS" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:422 +msgid "MNE" +msgstr "MNE" + +#: ../rules/base.xml.in.h:423 +msgid "MacBook/MacBook Pro" +msgstr "MacBook/MacBook Pro" + +#: ../rules/base.xml.in.h:424 +msgid "MacBook/MacBook Pro (Intl)" +msgstr "MacBook/MacBook Pro (межд)" + +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "МакедониÑ" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Старый Macintosh" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Ñпециальные клавиши (dead keys) Sun" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:325 -msgid "Make CapsLock an additional Ctrl." -msgstr "ИÑпользовать CapsLock как дополнительную клавишу Ctrl." +#: ../rules/base.xml.in.h:430 +msgid "Make CapsLock an additional Backspace" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу Backspace" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:431 +msgid "Make CapsLock an additional Ctrl" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу Ctrl" + +#: ../rules/base.xml.in.h:432 +msgid "Make CapsLock an additional ESC" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу ESC" + +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу Hyper" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу NumLock" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "ИÑпользовать CapsLock как дополнительную клавишу Super" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Мал" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Малайaлам" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:438 +msgid "Malayalam Lalitha" +msgstr "Малайaлам (Lalitha)" + +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Мальдивы" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Мальта" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "МальтийÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€Ð° Ñ Ñ€Ð°Ñкладкой US" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Мао" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Маори" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access Keyboard" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:336 -msgid "Menu is Compose." -msgstr "Клавиша Menu ÑоответÑтвует клавише Compose." +#: ../rules/base.xml.in.h:447 +msgid "Menu" +msgstr "Menu" -#: ../rules/base.xml.in.h:337 -msgid "Menu key changes group." -msgstr "Клавиша Menu менÑет группу." +#: ../rules/base.xml.in.h:448 +msgid "Meta is mapped to Left Win" +msgstr "Meta ÑоответÑтвует левой клавише Win" -#: ../rules/base.xml.in.h:338 -msgid "Meta is mapped to the Win-keys." +#: ../rules/base.xml.in.h:449 +msgid "Meta is mapped to Win keys" msgstr "Meta ÑоответÑтвует клавишам Win" -#: ../rules/base.xml.in.h:339 -msgid "Meta is mapped to the left Win-key." -msgstr "Meta ÑоответÑтвует левой клавише Win" +#: ../rules/base.xml.in.h:450 +msgid "Microsoft Comfort Curve Keyboard 2000" +msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, шведÑкаÑ" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:343 +#: ../rules/base.xml.in.h:454 +msgid "Microsoft Natural Keyboard Elite" +msgstr "Microsoft Natural Keyboard Elite" + +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:458 +msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" +msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" + +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office Keyboard" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:348 ../rules/sun.xml.in.h:72 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Разные параметры ÑовмеÑтимоÑти" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Мак" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Мальт" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "МьÑнм" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Монг" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "МонголиÑ" -#: ../rules/base.xml.in.h:354 ../rules/sun.xml.in.h:73 +#: ../rules/base.xml.in.h:467 +msgid "Montenegro" +msgstr "ЧерногориÑ" + +#: ../rules/base.xml.in.h:468 +msgid "Morocco" +msgstr "Марокко" + +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "МногоÑзычнаÑ" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "МногоÑзычнаÑ, Ð¿ÐµÑ€Ð²Ð°Ñ Ñ‡Ð°Ñть" -#: ../rules/base.xml.in.h:356 ../rules/sun.xml.in.h:74 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "МногоÑзычнаÑ, Ð²Ñ‚Ð¾Ñ€Ð°Ñ Ñ‡Ð°Ñть" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" -msgstr "МьÑнмар" +msgstr "МьÑнма" -#: ../rules/base.xml.in.h:358 -msgid "Neostyle" -msgstr "Neostyle" +#: ../rules/base.xml.in.h:473 +msgid "NICOLA-F style Backspace" +msgstr "Backspace в Ñтиле NICOLA-F" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:474 +msgid "NLA" +msgstr "NLA" + +#: ../rules/base.xml.in.h:475 +msgid "Nativo" +msgstr "Nativo" + +#: ../rules/base.xml.in.h:476 +msgid "Nativo for Esperanto" +msgstr "Nativo Ð´Ð»Ñ ÑÑперанто" + +#: ../rules/base.xml.in.h:477 +msgid "Nativo for USA keyboards" +msgstr "Nativo Ð´Ð»Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€ в СШÐ" + +#: ../rules/base.xml.in.h:478 +msgid "Neo 2" +msgstr "Neo 2" + +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Ðеп" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Ðепал" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Ðидерланды" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "ÐÐ¾Ð²Ð°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:483 +msgid "Nig" +msgstr "Ðиг" + +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "ÐигериÑ" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Флам" -#: ../rules/base.xml.in.h:364 ../rules/sun.xml.in.h:75 +#: ../rules/base.xml.in.h:486 +msgid "Non-breakable space character at fourth level" +msgstr "Символ неразрывного пробела на четвёртом уровне" + +#: ../rules/base.xml.in.h:487 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" +msgstr "Символ неразрывного пробела на четвёртом уровне, Ñимвол тонкого неразрывного пробела на шеÑтом уровне" + +#: ../rules/base.xml.in.h:488 +msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" +msgstr "Символ неразрывного пробела на четвёртом уровне, Ñимвол тонкого неразрывного пробела на шеÑтом уровне (Ñ Ð¿Ð¾Ð¼Ð¾Ñ‰ÑŒÑŽ Ctrl+Shift)" + +#: ../rules/base.xml.in.h:489 +msgid "Non-breakable space character at second level" +msgstr "Символ неразрывного пробела на втором уровне" + +#: ../rules/base.xml.in.h:490 +msgid "Non-breakable space character at third level" +msgstr "Символ неразрывного пробела на третьем уровне" + +#: ../rules/base.xml.in.h:491 +msgid "Non-breakable space character at third level, nothing at fourth level" +msgstr "Символ неразрывного пробела на третьем уровне, ничего на четвёртом" + +#: ../rules/base.xml.in.h:492 +msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" +msgstr "Символ неразрывного пробела на третьем уровне, Ñимвол тонкого неразрывного пробела на четвёртом уровне" + +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Ðор" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Ð¡ÐµÐ²ÐµÑ€Ð½Ð°Ñ Ð¡Ð°Ð°Ð¼ÑкаÑ" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Ð¡ÐµÐ²ÐµÑ€Ð½Ð°Ñ Ð¡Ð°Ð°Ð¼ÑкаÑ, иÑÐºÐ»ÑŽÑ‡Ð°Ñ Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "ÐорвегиÑ" -#: ../rules/base.xml.in.h:369 -msgid "NumLock LED shows alternative group." -msgstr "Индикатор NumLock отображает доп. группу." +#: ../rules/base.xml.in.h:498 +msgid "NumLock" +msgstr "NumLock" -#: ../rules/base.xml.in.h:370 -msgid "Numpad keys work as with Mac." -msgstr "Клавиши цифровой клавиатуры работают как в Mac." +#: ../rules/base.xml.in.h:499 +msgid "Numeric keypad delete key behaviour" +msgstr "Ð¤ÑƒÐ½ÐºÑ†Ð¸Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ¸ delete на цифровой клавиатуре" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:500 +msgid "Numeric keypad keys work as with Mac" +msgstr "Клавиши цифровой клавиатуры работают как в Mac" + +#: ../rules/base.xml.in.h:501 +msgid "Numeric keypad layout selection" +msgstr "Выбора раÑкладки цифровой клавиатуры" + +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:503 +msgid "OLPC" +msgstr "OLPC" + +#: ../rules/base.xml.in.h:504 +msgid "OLPC Dari" +msgstr "OLPC Dari" + +#: ../rules/base.xml.in.h:505 +msgid "OLPC Pashto" +msgstr "OLPC Pashto" + +#: ../rules/base.xml.in.h:506 +msgid "OLPC Southern Uzbek" +msgstr "Южно-узбекÑкий OLPC" + +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "ОкÑитанÑкий" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" -msgstr "Огхам (древнеирланÑкаÑ)" +msgstr "Огхам" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Огхам IS434" -#: ../rules/base.xml.in.h:374 -msgid "Oretec MCK-800 MM/Internet keyboard" -msgstr "Oretec MCK-800 MM/Internet keyboard" - -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "ОрийÑ" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:511 +msgid "Ortek MCK-800 MM/Internet keyboard" +msgstr "Ortek MCK-800 MM/Internet keyboard" + +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "ОÑетинÑкаÑ" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" -msgstr "ОÑетинÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€Ð° Windows" +msgstr "ОÑетинÑкаÑ, Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ Win" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:514 +msgid "Ossetian, legacy" +msgstr "ОÑетинÑкаÑ, уÑтаревшаÑ" + +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" -msgstr "PC-98xx" +msgstr "PC-98xx Series" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Пак" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "ПакиÑтан" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "ПуштунÑкаÑ" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Паттачот" -#: ../rules/base.xml.in.h:383 ../rules/sun.xml.in.h:78 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "ПерÑидÑкаÑ, Ñ Ð¿ÐµÑ€ÑидÑкой доп. панелью" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "ФонетичеÑкаÑ" -#: ../rules/base.xml.in.h:384 ../rules/sun.xml.in.h:79 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "ФонетичеÑÐºÐ°Ñ Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ Win" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "ПольÑк" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Польша" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "ПолифоничеÑкаÑ" -#: ../rules/base.xml.in.h:387 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "ПортугалиÑ" -#: ../rules/base.xml.in.h:388 -msgid "Press Left Alt key to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ левой клавиши Alt." - -#: ../rules/base.xml.in.h:389 -msgid "Press Left Win-key to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ левой клавиши Win." - -#: ../rules/base.xml.in.h:390 -msgid "Press Menu key to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ клавиши Menu." - -#: ../rules/base.xml.in.h:391 -msgid "" -"Press Right Alt key to choose 3rd level, Shift+Right Alt key is Multi_Key." -msgstr "" -"Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Alt. Shift и правый Alt вмеÑте " -"работают как Multi_Key." - -#: ../rules/base.xml.in.h:392 -msgid "Press Right Alt key to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Alt." - -#: ../rules/base.xml.in.h:393 -msgid "Press Right Ctrl to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Ctrl." - -#: ../rules/base.xml.in.h:394 -msgid "Press Right Win-key to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Win." - -#: ../rules/base.xml.in.h:395 -msgid "Press any of Alt keys to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ любой клавиши Alt." - -#: ../rules/base.xml.in.h:396 -msgid "Press any of Win-keys to choose 3rd level." -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ любой клавиши Win." - -#: ../rules/base.xml.in.h:397 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:398 -msgid "Pro Keypad" -msgstr "Pro Ñ Ð´Ð¾Ð¿. панелью" - -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Пробат" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:528 +msgid "Programmer Dvorak" +msgstr "Дворак Ð´Ð»Ñ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð¸Ñтов" + +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:401 ../rules/sun.xml.in.h:88 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Порт" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:403 -msgid "R-Alt switches group while pressed." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:532 +msgid "Right Alt" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt" -#: ../rules/base.xml.in.h:404 -msgid "Right Alt is Compose." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt ÑоответÑтвует клавише Alt." +#: ../rules/base.xml.in.h:533 +msgid "Right Alt (while pressed)" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt (пока нажата)" -#: ../rules/base.xml.in.h:405 -msgid "Right Alt key changes group." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt менÑет группу." +#: ../rules/base.xml.in.h:534 +msgid "Right Alt key never chooses 3rd level" +msgstr "По правой клавише Alt никогда не выбираетÑÑ Ñ‚Ñ€ÐµÑ‚Ð¸Ð¹ уровень" -#: ../rules/base.xml.in.h:406 -msgid "Right Ctrl is Compose." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl ÑоответÑтвует клавише Compose." +#: ../rules/base.xml.in.h:535 +msgid "Right Alt, Shift+Right Alt key is Multi_Key" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt, Shift и правый Alt вмеÑте работают как Multi_Key" -#: ../rules/base.xml.in.h:407 -msgid "Right Ctrl key changes group." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl менÑет группу." +#: ../rules/base.xml.in.h:536 +msgid "Right Ctrl" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl" -#: ../rules/base.xml.in.h:408 -msgid "Right Ctrl key switches group while pressed." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:537 +msgid "Right Ctrl (while pressed)" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl (пока нажата)" -#: ../rules/base.xml.in.h:409 -msgid "Right Ctrl key works as Right Alt." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl работает как Ð¿Ñ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt." +#: ../rules/base.xml.in.h:538 +msgid "Right Ctrl as Right Alt" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl работает как Ð¿Ñ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt" -#: ../rules/base.xml.in.h:410 -msgid "Right Shift key changes group." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift менÑет группу." +#: ../rules/base.xml.in.h:539 +msgid "Right Shift" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift" -#: ../rules/base.xml.in.h:411 -msgid "Right Win-key changes group." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win менÑет группу." +#: ../rules/base.xml.in.h:540 +msgid "Right Win" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win" -#: ../rules/base.xml.in.h:412 -msgid "Right Win-key is Compose." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win ÑоответÑтвует клавише Compose." +#: ../rules/base.xml.in.h:541 +msgid "Right Win (while pressed)" +msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win (пока нажата)" -#: ../rules/base.xml.in.h:413 -msgid "Right Win-key switches group while pressed." -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Win переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ." +#: ../rules/base.xml.in.h:542 +msgid "Right hand" +msgstr "Ð”Ð»Ñ Ð¿Ñ€Ð°Ð²ÑˆÐµÐ¹" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" -msgstr "Dvorak Ð´Ð»Ñ Ð¿Ñ€Ð°Ð²ÑˆÐµÐ¹" +msgstr "Дворак Ð´Ð»Ñ Ð¿Ñ€Ð°Ð²ÑˆÐµÐ¹" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "РумыниÑ" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "РумынÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€Ð° Ñ Ð½ÐµÐ¼ÐµÑ†ÐºÐ¸Ð¼Ð¸ буквами" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" -msgstr "" -"РумынÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€Ð° Ñ Ð½ÐµÐ¼ÐµÑ†ÐºÐ¸Ð¼Ð¸ буквами, иÑключить Ñпециальные клавиши " -"(dead keys)" +msgstr "РумынÑÐºÐ°Ñ ÐºÐ»Ð°Ð²Ð¸Ð°Ñ‚ÑƒÑ€Ð° Ñ Ð½ÐµÐ¼ÐµÑ†ÐºÐ¸Ð¼Ð¸ буквами, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Рум" -#: ../rules/base.xml.in.h:419 ../rules/sun.xml.in.h:94 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "РуÑ" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "РоÑÑиÑ" -#: ../rules/base.xml.in.h:421 ../rules/sun.xml.in.h:95 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "РуÑÑкаÑ" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "РуÑÑÐºÐ°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:552 +msgid "Russian phonetic Dvorak" +msgstr "РуÑÑкий фонетичеÑкий Дворак" + +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "РуÑÑÐºÐ°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ, иÑключить Ñпециальные клавиши (dead keys)" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" -msgstr "РуÑÑкий Ñ ÐšÐ°Ð·Ð°Ñ…Ñким" - -#: ../rules/base.xml.in.h:425 -msgid "SCG" -msgstr "СМÐ" +msgstr "РуÑÑÐºÐ°Ñ Ñ ÐšÐ°Ð·Ð°Ñ…Ñкой" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 +msgid "SRB" +msgstr "SRB" + +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:562 +msgid "SVEN Slim 303" +msgstr "SVEN Slim 303" + +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:434 -msgid "ScrollLock LED shows alternative group." -msgstr "Индикатор ScrollLock отображает доп. группу." +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:435 -msgid "Serbia and Montenegro" -msgstr "Ð¡ÐµÑ€Ð±Ð¸Ñ Ð¸ ЧерногориÑ" +#: ../rules/base.xml.in.h:566 +msgid "ScrollLock" +msgstr "ScrollLock" -#: ../rules/base.xml.in.h:436 -msgid "Shift with numpad keys works as in MS Windows." -msgstr "" -"Клавиша Shift Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ цифровой клавиатуры работают также как в MS " -"Windows." +#: ../rules/base.xml.in.h:567 +msgid "Secwepemctsin" +msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:437 -msgid "Shift+CapsLock changes group." -msgstr "Клавиши Shift и Caps Lock, нажатые вмеÑте, менÑÑŽÑ‚ группу." +#: ../rules/base.xml.in.h:568 +msgid "Semi-colon on third level" +msgstr "Точка Ñ Ð·Ð°Ð¿Ñтой на третьем уровне" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 +msgid "Serbia" +msgstr "СербиÑ" + +#: ../rules/base.xml.in.h:570 +msgid "Shift cancels CapsLock" +msgstr "Shift отменÑет CapsLock" + +#: ../rules/base.xml.in.h:571 +msgid "Shift does not cancel NumLock, chooses 3d level instead" +msgstr "Shift не отменÑет NumLock, а выбирает третий уровень" + +#: ../rules/base.xml.in.h:572 +msgid "Shift with numeric keypad keys works as in MS Windows" +msgstr "Клавиша Shift Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ цифровой клавиатуры работают также как в MS Windows" + +#: ../rules/base.xml.in.h:573 +msgid "Shift+CapsLock" +msgstr "Shift+CapsLock" + +#: ../rules/base.xml.in.h:574 +msgid "Simple" +msgstr "ПроÑтаÑ" + +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "СловакиÑ" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "СловениÑ" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Ð®Ð¶Ð½Ð°Ñ Ðфрика" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Южно-узбекÑкаÑ" -#: ../rules/base.xml.in.h:442 -msgid "Space key output nobreakspace at fourth level." -msgstr "Пробел выдаёт неразделÑемый пробел на четвёртом уровне." - -#: ../rules/base.xml.in.h:443 -msgid "Space key output nobreakspace at second level." -msgstr "Пробел выдаёт неразделÑемый пробел на втором уровне." - -#: ../rules/base.xml.in.h:444 -msgid "Space key output nobreakspace at third level." -msgstr "Пробел выдаёт неразделÑемый пробел на третьем уровне." - -#: ../rules/base.xml.in.h:445 -msgid "Space key output space at any level." -msgstr "Пробел выдаёт пробел на каждом уровне." - -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "ИÑпаниÑ" -#: ../rules/base.xml.in.h:447 ../rules/sun.xml.in.h:102 -msgid "Special keys (Ctrl+Alt+<key>) handled in a server." -msgstr "Специальные клавиши (Ctrl+Alt+<клв>) обрабатываютÑÑ Ñервером." +#: ../rules/base.xml.in.h:580 +msgid "Special keys (Ctrl+Alt+<key>) handled in a server" +msgstr "Специальные клавиши (Ctrl+Alt+<клв>) обрабатываютÑÑ Ñервером" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "ШрЛ" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Шри Ланка" -#: ../rules/base.xml.in.h:450 ../rules/sun.xml.in.h:103 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "СтандартнаÑ" +#: ../rules/base.xml.in.h:584 +msgid "Standard (Cedilla)" +msgstr "Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ (Ñедиль)" + #. RSTU 2019-91 -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð°Ñ RSTU, руÑÑкаÑ" -#: ../rules/base.xml.in.h:455 ../rules/sun.xml.in.h:111 +#: ../rules/base.xml.in.h:589 +msgid "Sun Type 5/6" +msgstr "Sun Type 5/6" + +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Специальные клавиши (dead keys) Sun" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:457 -msgid "Super is mapped to the Win-keys (default)." -msgstr "Super ÑоответÑтвует клавишам Win (по умолчанию)" +#: ../rules/base.xml.in.h:592 +msgid "Svdvorak" +msgstr "Svdvorak" -#: ../rules/base.xml.in.h:458 ../rules/sun.xml.in.h:112 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Слов" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Cловен" -#: ../rules/base.xml.in.h:460 -msgid "Swap Ctrl and CapsLock." -msgstr "ПоменÑть меÑтами клавиши Ctrl и CapsLock." +#: ../rules/base.xml.in.h:595 +msgid "Swap Ctrl and CapsLock" +msgstr "ПоменÑть меÑтами клавиши Ctrl и CapsLock" -#: ../rules/base.xml.in.h:461 -msgid "Swap keycodes of two keys when Mac keyboards are misdetected by kernel." -msgstr "" -"ПереÑтавить коды двух клавиш когда клавиатура Mac неправильно определÑетÑÑ " -"Ñдром." +#: ../rules/base.xml.in.h:596 +msgid "Swap ESC and CapsLock" +msgstr "ПоменÑть меÑтами клавиши ESC и CapsLock" -#: ../rules/base.xml.in.h:462 ../rules/sun.xml.in.h:114 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Швед" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "ШвециÑ" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "ШвейцариÑ" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (карманный ПК)" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "ÐÑÑ" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "СирийÑкаÑ" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "СирийÑкаÑ" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "СирийÑÐºÐ°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "ТаджикиÑтан" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "ТамильÑкаÑ" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "ТамильÑÐºÐ°Ñ \"ÐŸÐµÑ‡Ð°Ñ‚Ð½Ð°Ñ Ð¼Ð°ÑˆÐ¸Ð½ÐºÐ°\" TAB" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "ТамильÑÐºÐ°Ñ \"ÐŸÐµÑ‡Ð°Ñ‚Ð½Ð°Ñ Ð¼Ð°ÑˆÐ¸Ð½ÐºÐ°\" TSCII" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "ТамильÑÐºÐ°Ñ Unicode" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:611 +msgid "Targa Visionary 811" +msgstr "Targa Visionary 811" + +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "ТатарÑкаÑ" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Телугу" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Таи" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Таиланд" -#: ../rules/base.xml.in.h:480 ../rules/sun.xml.in.h:118 -msgid "Third level choosers" -msgstr "Выбор 3-го уровнÑ" +#: ../rules/base.xml.in.h:616 +msgid "Tibetan" +msgstr "ТибетÑкаÑ" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:617 +msgid "Tibetan (with ASCII numerals)" +msgstr "ТибетÑÐºÐ°Ñ (Ñ Ñ†Ð¸Ñ„Ñ€Ð°Ð¼Ð¸ ASCII)" + +#: ../rules/base.xml.in.h:618 +msgid "Tifinagh" +msgstr "ТифинагÑкаÑ" + +#: ../rules/base.xml.in.h:619 +msgid "Tifinagh Alternative" +msgstr "ТифинагÑÐºÐ°Ñ Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ" + +#: ../rules/base.xml.in.h:620 +msgid "Tifinagh Alternative Phonetic" +msgstr "ТифинагÑÐºÐ°Ñ Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:621 +msgid "Tifinagh Extended" +msgstr "ТифинагÑÐºÐ°Ñ Ñ€Ð°ÑширеннаÑ" + +#: ../rules/base.xml.in.h:622 +msgid "Tifinagh Extended Phonetic" +msgstr "ТифинагÑÐºÐ°Ñ Ñ€Ð°ÑÑˆÐ¸Ñ€ÐµÐ½Ð½Ð°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:623 +msgid "Tifinagh Phonetic" +msgstr "ТифинагÑÐºÐ°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Вариант Ñ Ñ‚Ð¸Ð»ÑŒÐ´Ð¾Ð¹ (~)" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Тадж" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:626 +msgid "To the corresponding key in a Dvorak keyboard." +msgstr "Ðа ÑоответÑтвующую клавишу на клавиатуре Дворак." + +#: ../rules/base.xml.in.h:627 +msgid "To the corresponding key in a Qwerty keyboard." +msgstr "Ðа ÑоответÑтвующую клавишу на клавиатуре Qwerty." + +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Ð¢Ñ€Ð°Ð´Ð¸Ñ†Ð¸Ð¾Ð½Ð½Ð°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access Keyboard" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:486 ../rules/sun.xml.in.h:119 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Тур" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "ТурциÑ" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "ТуркмениÑ" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "ÐŸÐµÑ‡Ð°Ñ‚Ð½Ð°Ñ Ð¼Ð°ÑˆÐ¸Ð½ÐºÐ°" -#: ../rules/base.xml.in.h:489 ../rules/sun.xml.in.h:123 -msgid "U.S. English" -msgstr "ÐнглийÑÐºÐ°Ñ (СШÐ)" +#: ../rules/base.xml.in.h:637 +msgid "UCW layout (accented letters only)" +msgstr "РаÑкладка UCW (только Ñимволы акцентов)" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ð±Ð¾ÑнийÑкими диграфами" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ð±Ð¾ÑнийÑкими буквами" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ñ…Ð¾Ñ€Ð²Ð°Ñ‚Ñкими диграфами" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ñ…Ð¾Ñ€Ð²Ð°Ñ‚Ñкими буквами" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:642 +msgid "US keyboard with Estonian letters" +msgstr "Клавиатура Ð¡Ð¨Ð Ñ ÑÑтонÑкими буквами" + +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ð¸Ñ‚Ð°Ð»ÑŒÑнÑкими буквами" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Клавиатура Ð¡Ð¨Ð Ñ Ð»Ð¸Ñ‚Ð¾Ð²Ñкими буквами" -#: ../rules/base.xml.in.h:495 -msgid "US keyboard with Slovenian digraphs" -msgstr "Клавиатура СШРÑо ÑловенÑкими диграфами" - -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Клавиатура СШРÑо ÑловенÑкими буквами" -#: ../rules/base.xml.in.h:497 ../rules/sun.xml.in.h:125 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "СШÐ" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:647 +msgid "Udmurt" +msgstr "УдмуртÑкаÑ" + +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Укр" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Украина" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:650 +msgid "Unicode additions (arrows and math operators)" +msgstr "Ð”Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑŽÐ½Ð¸ÐºÐ¾Ð´Ð° (Ñтрелки и математичеÑкие операторы)" + +#: ../rules/base.xml.in.h:651 +msgid "Unicode additions (arrows and math operators). Math operators on default level" +msgstr "Ð”Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñ ÑŽÐ½Ð¸ÐºÐ¾Ð´Ð° (Ñтрелки и математичеÑкие операторы). МатематичеÑкие операторы на уровне по умолчанию" + +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:501 ../rules/sun.xml.in.h:126 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "ÐнглийÑÐºÐ°Ñ (ВеликобританиÑ)" -#: ../rules/base.xml.in.h:502 -msgid "Urdu" -msgstr "Урду" +#: ../rules/base.xml.in.h:654 +msgid "Unitek KB-1925" +msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:655 +msgid "Urdu, Alternative phonetic" +msgstr "Урду, Ð°Ð»ÑŒÑ‚ÐµÑ€Ð½Ð°Ñ‚Ð¸Ð²Ð½Ð°Ñ Ñ„Ð¾Ð½ÐµÑ‚Ð¸Ñ‡ÐµÑкаÑ" + +#: ../rules/base.xml.in.h:656 +msgid "Urdu, Phonetic" +msgstr "Урду, фонетичеÑкаÑ" + +#: ../rules/base.xml.in.h:657 +msgid "Urdu, Winkeys" +msgstr "Урду, Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ Win" + +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "ИÑпользовать боÑнийÑкие диграфы" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "ИÑпользовать хорватÑкие диграфы" -#: ../rules/base.xml.in.h:505 -msgid "Use Slovenian digraphs" -msgstr "ИÑпользовать ÑловенÑкие диграфы" - -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" -msgstr "ИÑпользовать французÑкие кавычки как кавычки" +msgstr "ИÑпользовать кавычки ёлочки как кавычки" -#: ../rules/base.xml.in.h:507 -msgid "Use keyboard LED to show alternative group." -msgstr "ИÑпользование клавиатурных индикаторов Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿. групп." +#: ../rules/base.xml.in.h:661 +msgid "Use keyboard LED to show alternative layout" +msgstr "ИÑпользовать клавиатурные индикаторы Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… раÑкладок" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:662 +msgid "Using space key to input non-breakable space character" +msgstr "Клавиша пробела иÑпользуетÑÑ Ð´Ð»Ñ Ð²Ð²Ð¾Ð´Ð° Ñимвола неразрывного пробела" + +#: ../rules/base.xml.in.h:663 +msgid "Usual space at any level" +msgstr "Обычный пробел на любом уровне" + +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Узб" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "УзбекиÑтан" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Вьетнам" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:667 +msgid "ViewSonic KU-306 Internet Keyboard" +msgstr "ViewSonic KU-306 Internet Keyboard" + +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Вьет" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:669 +msgid "Wang 724 keypad with unicode additions (arrows and math operators)" +msgstr "Wang 724 keypad Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñми юникода (Ñтрелки и математичеÑкие операторы)" + +#: ../rules/base.xml.in.h:670 +msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" +msgstr "Wang 724 keypad Ñ Ð´Ð¾Ð±Ð°Ð²Ð»ÐµÐ½Ð¸Ñми юникода (Ñтрелки и математичеÑкие операторы). МатематичеÑкие операторы на уровне по умолчанию" + +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang model 724 azerty" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "ЗападнаÑ" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" -msgstr "Клавиатура Windows" +msgstr "Клавиши Win" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "С клавишей <\\|>" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:676 +msgid "With EuroSign on 5" +msgstr "С знаком Евро к клавише 5" + +#: ../rules/base.xml.in.h:677 msgid "With guillemets" -msgstr "С французÑкими кавычками" +msgstr "С кавычками ёлочками" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internet Keyboard" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:679 +msgid "Yakut" +msgstr "ЯкутÑкаÑ" + +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Йоруба" -#: ../rules/base.xml.in.h:520 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" -msgstr "З и Ж переÑтавлены" +msgstr "З и Ж переÑтавлены меÑтами" -#: ../rules/base.xml.in.h:521 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "ЮÐÐ " -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/цифры" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "цифры" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:686 +msgid "displaced semicolon and quote (obsolete)" +msgstr "Ñмещённые точка Ñ Ð·Ð°Ð¿Ñтой и кавычка (уÑтарело)" + +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:526 ../rules/sun.xml.in.h:131 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, раÑширенные функции Backslash" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/цифры" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" -#: ../rules/sun.xml.in.h:1 -msgid "\"Typewriter\"" -msgstr "ÐŸÐµÑ‡Ð°Ñ‚Ð½Ð°Ñ Ð¼Ð°ÑˆÐ¸Ð½ÐºÐ°" - -#: ../rules/sun.xml.in.h:17 -msgid "Acts as Shift with locking. Shift cancels Caps." -msgstr "" -"ДейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift приоÑтанавливает дейÑтвие Caps." - -#: ../rules/sun.xml.in.h:18 -msgid "Acts as Shift with locking. Shift doesn't cancel Caps." -msgstr "ДейÑтвует как Shift Ñ Ð±Ð»Ð¾ÐºÐ¸Ñ€Ð¾Ð²ÐºÐ¾Ð¹. Shift не влиÑет на Caps." - -#: ../rules/sun.xml.in.h:19 -msgid "Alt+Control changes group" -msgstr "Alt+Control менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:20 -msgid "Alt+Shift changes group" -msgstr "Alt+Shift менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:21 -msgid "Basic" -msgstr "ОÑновные" - -#: ../rules/sun.xml.in.h:23 -msgid "Belgian" -msgstr "БельгийÑкаÑ" - -#: ../rules/sun.xml.in.h:25 -msgid "Both Alt keys together change group" -msgstr "Обе клавиши Alt, нажатые вмеÑте, менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:26 -msgid "Both Ctrl keys together change group" -msgstr "Обе клавиши Ctrl, нажатые вмеÑте, менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:27 -msgid "Both Shift keys together change group" -msgstr "Обе клавиши Shift, нажатые вмеÑте, менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:28 -msgid "Bulgarian" -msgstr "БолгарÑкаÑ" - -#: ../rules/sun.xml.in.h:30 -msgid "Canadian" -msgstr "КанадÑкаÑ" - -#: ../rules/sun.xml.in.h:31 -msgid "Caps Lock is Compose" -msgstr "Клавиша Caps Lock ÑоответÑтвует клавише Compose" - -#: ../rules/sun.xml.in.h:32 -msgid "Caps Lock key changes group" -msgstr "Клавиша Caps Lock менÑет группу" - -#: ../rules/sun.xml.in.h:34 -msgid "Caps_Lock LED shows alternative group" -msgstr "Индикатор Caps_Lock отображает другую группу" - -#: ../rules/sun.xml.in.h:35 -msgid "Control Key Position" -msgstr "Положение клавиши Control" - -#: ../rules/sun.xml.in.h:36 -msgid "Control key at bottom left" -msgstr "Клавиша Control Ñнизу Ñлева" - -#: ../rules/sun.xml.in.h:37 -msgid "Control key at left of 'A'" -msgstr "Клавиша Control Ñлева от 'Ф'" - -#: ../rules/sun.xml.in.h:38 -msgid "Control+Shift changes group" -msgstr "Control+Shift менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:40 -msgid "Czech" -msgstr "ЧешÑкий" - -#: ../rules/sun.xml.in.h:41 -msgid "Danish" -msgstr "ДатÑкий" - -#: ../rules/sun.xml.in.h:45 -msgid "DeuCH" -msgstr "ÐемШВ" - -#: ../rules/sun.xml.in.h:47 -msgid "Dvo" -msgstr "Dvo" - -#: ../rules/sun.xml.in.h:52 -msgid "Finnish" -msgstr "ФинÑкаÑ" - -#: ../rules/sun.xml.in.h:54 -msgid "FraCH" -msgstr "ФраШВ" - -#: ../rules/sun.xml.in.h:57 -msgid "German" -msgstr "ÐемецкаÑ" - -#: ../rules/sun.xml.in.h:60 -msgid "Hungarian" -msgstr "ВенгерÑкаÑ" - -#: ../rules/sun.xml.in.h:64 -msgid "Italian" -msgstr "ИтальÑнÑкаÑ" - -#: ../rules/sun.xml.in.h:65 -msgid "Japanese" -msgstr "ЯпонÑкаÑ" - -#: ../rules/sun.xml.in.h:67 -msgid "Left Alt key changes group" -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt менÑет группу" - -#: ../rules/sun.xml.in.h:68 -msgid "Left Alt key switches group while pressed" -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ" - -#: ../rules/sun.xml.in.h:69 -msgid "Left Ctrl key changes group" -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl менÑет группу" - -#: ../rules/sun.xml.in.h:70 -msgid "Left Shift key changes group" -msgstr "Ð›ÐµÐ²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift менÑет группу" - -#: ../rules/sun.xml.in.h:71 -msgid "Make CapsLock an additional Control" -msgstr "ИÑпользовать CapsLock как дополнительную клавишу Control" - -#: ../rules/sun.xml.in.h:76 -msgid "Norwegian" -msgstr "ÐорвежÑкаÑ" - -#: ../rules/sun.xml.in.h:77 -msgid "Num_Lock LED shows alternative group" -msgstr "Индикатор Num_Lock отображает дополнительную группу" - -#: ../rules/sun.xml.in.h:80 -msgid "Polish" -msgstr "ПольÑкаÑ" - -#: ../rules/sun.xml.in.h:81 -msgid "Polish with Polish quotes on key \"1/!\"" -msgstr "ПольÑÐºÐ°Ñ Ñ Ð¿Ð¾Ð»ÑŒÑкими кавычками на клавишах \"1/!\"" - -#: ../rules/sun.xml.in.h:82 -msgid "Portuguese" -msgstr "ПортугальÑкаÑ" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" -#: ../rules/sun.xml.in.h:83 -msgid "Press Left Alt key to choose 3rd level" -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ левой клавиши Alt" +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "ÐÑ‚ÑинÑкаÑ" -#: ../rules/sun.xml.in.h:84 -msgid "Press Right Alt key to choose 3rd level" -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Alt" +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Объединённые надбуквенные знаки вмеÑте Ñпец. клавиш (dead keys)" -#: ../rules/sun.xml.in.h:85 -msgid "" -"Press Right Alt-key to choose 3rd level, Shift+Right Alt-key is Multi_Key" -msgstr "" -"Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Alt. Shift и правый Alt вмеÑте " -"работают как Multi_Key" - -#: ../rules/sun.xml.in.h:86 -msgid "Press Right Control to choose 3rd level" -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ правой клавиши Control" - -#: ../rules/sun.xml.in.h:87 -msgid "Press any of Alt keys to choose 3rd level" -msgstr "Выбор 3-го ÑƒÑ€Ð¾Ð²Ð½Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸ÐµÐ¼ любой клавиши Alt" - -#: ../rules/sun.xml.in.h:89 -msgid "Right Alt key changes group" -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt менÑет группу" - -#: ../rules/sun.xml.in.h:90 -msgid "Right Alt switches group while pressed" -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt переключает группу на Ð²Ñ€ÐµÐ¼Ñ Ð½Ð°Ð¶Ð°Ñ‚Ð¸Ñ" - -#: ../rules/sun.xml.in.h:91 -msgid "Right Control key works as Right Alt" -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Control работает как Ð¿Ñ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Alt" - -#: ../rules/sun.xml.in.h:92 -msgid "Right Ctrl key changes group" -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Ctrl менÑет группу" - -#: ../rules/sun.xml.in.h:93 -msgid "Right Shift key changes group" -msgstr "ÐŸÑ€Ð°Ð²Ð°Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ° Shift менÑет группу" - -#: ../rules/sun.xml.in.h:96 -msgid "Scroll Lock changes group" -msgstr "Scroll Lock менÑет группу" - -#: ../rules/sun.xml.in.h:97 -msgid "Scroll_Lock LED shows alternative group" -msgstr "Индикатор Scroll_Lock отображает дополнительную группу" - -#: ../rules/sun.xml.in.h:98 -msgid "Shift with numpad keys works as in MS Windows" -msgstr "" -"Клавиша Shift Ñ ÐºÐ»Ð°Ð²Ð¸ÑˆÐ°Ð¼Ð¸ цифровой клавиатуры работают также как в MS Windows" - -#: ../rules/sun.xml.in.h:99 -msgid "Shift+CapsLock changes group" -msgstr "Клавиши Shift и Caps Lock, нажатые вмеÑте, менÑÑŽÑ‚ группу" - -#: ../rules/sun.xml.in.h:100 -msgid "Slovak" -msgstr "СловацкаÑ" - -#: ../rules/sun.xml.in.h:101 -msgid "Spanish" -msgstr "ИÑпанÑкаÑ" - -#: ../rules/sun.xml.in.h:104 -msgid "Sun Type 4" -msgstr "Sun Type 4" - -#: ../rules/sun.xml.in.h:105 -msgid "Sun Type 5" -msgstr "Sun Type 5" - -#: ../rules/sun.xml.in.h:106 -msgid "Sun Type 5 European" -msgstr "Sun Type 5 ЕвропейÑкаÑ" - -#: ../rules/sun.xml.in.h:107 -msgid "Sun Type 5 Unix" -msgstr "Sun Type 5 Ð´Ð»Ñ Unix" - -#: ../rules/sun.xml.in.h:108 -msgid "Sun Type 6" -msgstr "Sun Type 6" - -#: ../rules/sun.xml.in.h:109 -msgid "Sun Type 6 Unix" -msgstr "Sun Type 6 Ð´Ð»Ñ Unix" - -#: ../rules/sun.xml.in.h:110 -msgid "Sun Type 6 with Euro key" -msgstr "Sun Type 6 Ñо знаком евро" - -#: ../rules/sun.xml.in.h:113 -msgid "Swap Control and Caps Lock" -msgstr "ПоменÑть меÑтами клавиши Control и Caps Lock" - -#: ../rules/sun.xml.in.h:115 -msgid "Swedish" -msgstr "ШведÑкаÑ" - -#: ../rules/sun.xml.in.h:116 -msgid "Swiss French" -msgstr "ШвейцарÑÐºÐ°Ñ Ñ„Ñ€Ð°Ð½Ñ†ÑƒÐ·ÑкаÑ" - -#: ../rules/sun.xml.in.h:117 -msgid "Swiss German" -msgstr "ШвейцарÑÐºÐ°Ñ Ð½ÐµÐ¼ÐµÑ†ÐºÐ°Ñ" - -#: ../rules/sun.xml.in.h:120 -msgid "Turkish" -msgstr "ТурецкаÑ" - -#: ../rules/sun.xml.in.h:121 -msgid "Turkish (F)" -msgstr "Ð¢ÑƒÑ€ÐµÑ†ÐºÐ°Ñ Ñ (F)" - -#: ../rules/sun.xml.in.h:122 -msgid "Turkish Alt-Q Layout" -msgstr "Ð¢ÑƒÑ€ÐµÑ†ÐºÐ°Ñ Ñ€Ð°Ñкладка Ñ Alt-Q" - -#: ../rules/sun.xml.in.h:124 -msgid "U.S. English w/ ISO9995-3" -msgstr "ÐнглийÑÐºÐ°Ñ (СШÐ) Ñ ISO9995-3" - -#: ../rules/sun.xml.in.h:127 -msgid "Use keyboard LED to show alternative group" -msgstr "" -"ИÑпользование клавиатурных индикаторов Ð´Ð»Ñ Ð¾Ñ‚Ð¾Ð±Ñ€Ð°Ð¶ÐµÐ½Ð¸Ñ Ð´Ð¾Ð¿Ð¾Ð»Ð½Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ñ‹Ñ… групп" - -#: ../rules/sun.xml.in.h:128 -msgid "Uses internal capitalization. Shift cancels Caps." -msgstr "" -"Включает внутреннюю раÑÑтановку заглавных. Shift приоÑтанавливает дейÑтвие " -"CapsLock." - -#: ../rules/sun.xml.in.h:129 -msgid "Uses internal capitalization. Shift doesn't cancel Caps." -msgstr "" -"Включает внутреннюю раÑÑтановку заглавных. Shift не влиÑет на CapsLock." +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "СалишÑÐºÐ°Ñ ÐºÑ‘Ñ€-д’ален" -#: ../rules/sun.xml.in.h:130 -msgid "bksl" -msgstr "bksl" +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "ÐœÐµÐ¶Ð´ÑƒÐ½Ð°Ñ€Ð¾Ð´Ð½Ð°Ñ (Ð¾Ð±ÑŠÐµÐ´Ð¸Ð½Ñ‘Ð½Ð½Ð°Ñ Ñ AltGr Unicode)" -#: ../rules/sun.xml.in.h:132 -msgid "type4" -msgstr "type4" +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "ÐœÐµÐ¶Ð´ÑƒÐ½Ð°Ñ€Ð¾Ð´Ð½Ð°Ñ (Ð¾Ð±ÑŠÐµÐ´Ð¸Ð½Ñ‘Ð½Ð½Ð°Ñ Ñ AltGr Unicode, альтернативнаÑ)" diff --git a/xorg-server/xkbdata.src/po/sv.po b/xorg-server/xkbdata.src/po/sv.po index ae54b0508..b12bbec22 100644 --- a/xorg-server/xkbdata.src/po/sv.po +++ b/xorg-server/xkbdata.src/po/sv.po @@ -6,2688 +6,2828 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.5\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-01-13 23:12+0000\n" -"PO-Revision-Date: 2009-02-24 19:37+0100\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-18 10:00+0100\n" "Last-Translator: Daniel Nylander <po@danielnylander.se>\n" "Language-Team: Swedish <tp-sv@listor.tp-sv.se>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: ../rules/base.xml.in.h:1 ../rules/evdev.xml.in.h:1 +#: ../rules/base.xml.in.h:1 msgid "(F)" msgstr "(F)" -#: ../rules/base.xml.in.h:2 ../rules/evdev.xml.in.h:2 +#: ../rules/base.xml.in.h:2 msgid "(Legacy) Alternative" msgstr "(Äldre) Alternativ" -#: ../rules/base.xml.in.h:3 ../rules/evdev.xml.in.h:3 +#: ../rules/base.xml.in.h:3 msgid "(Legacy) Alternative, Sun dead keys" msgstr "(Äldre) Alternativ, Sun stumma tangenter" -#: ../rules/base.xml.in.h:4 ../rules/evdev.xml.in.h:4 +#: ../rules/base.xml.in.h:4 msgid "(Legacy) Alternative, eliminate dead keys" msgstr "(Äldre) Alternativ, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:5 ../rules/evdev.xml.in.h:5 +#: ../rules/base.xml.in.h:5 msgid "101/104 key Compatible" msgstr "101/104-tangenters kompatibel" -#: ../rules/base.xml.in.h:6 ../rules/evdev.xml.in.h:6 +#: ../rules/base.xml.in.h:6 msgid "101/qwerty/comma/Dead keys" msgstr "101/qwerty/komma/Stumma tangenter" -#: ../rules/base.xml.in.h:7 ../rules/evdev.xml.in.h:7 +#: ../rules/base.xml.in.h:7 msgid "101/qwerty/comma/Eliminate dead keys" msgstr "101/qwerty/komma/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:8 ../rules/evdev.xml.in.h:8 +#: ../rules/base.xml.in.h:8 msgid "101/qwerty/dot/Dead keys" msgstr "101/qwerty/punkt/Stumma tangenter" -#: ../rules/base.xml.in.h:9 ../rules/evdev.xml.in.h:9 +#: ../rules/base.xml.in.h:9 msgid "101/qwerty/dot/Eliminate dead keys" msgstr "101/qwerty/punkt/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:10 ../rules/evdev.xml.in.h:10 +#: ../rules/base.xml.in.h:10 msgid "101/qwertz/comma/Dead keys" msgstr "101/qwertz/komma/Stumma tangenter" -#: ../rules/base.xml.in.h:11 ../rules/evdev.xml.in.h:11 +#: ../rules/base.xml.in.h:11 msgid "101/qwertz/comma/Eliminate dead keys" msgstr "101/qwertz/komma/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:12 ../rules/evdev.xml.in.h:12 +#: ../rules/base.xml.in.h:12 msgid "101/qwertz/dot/Dead keys" msgstr "101/qwertz/punkt/Stumma tangenter" -#: ../rules/base.xml.in.h:13 ../rules/evdev.xml.in.h:13 +#: ../rules/base.xml.in.h:13 msgid "101/qwertz/dot/Eliminate dead keys" msgstr "101/qwertz/punkt/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:14 ../rules/evdev.xml.in.h:14 +#: ../rules/base.xml.in.h:14 msgid "102/qwerty/comma/Dead keys" msgstr "102/qwerty/komma/Stumma tangenter" -#: ../rules/base.xml.in.h:15 ../rules/evdev.xml.in.h:15 +#: ../rules/base.xml.in.h:15 msgid "102/qwerty/comma/Eliminate dead keys" msgstr "102/qwerty/komma/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:16 ../rules/evdev.xml.in.h:16 +#: ../rules/base.xml.in.h:16 msgid "102/qwerty/dot/Dead keys" msgstr "102/qwerty/punkt/Stumma tangenter" -#: ../rules/base.xml.in.h:17 ../rules/evdev.xml.in.h:17 +#: ../rules/base.xml.in.h:17 msgid "102/qwerty/dot/Eliminate dead keys" msgstr "102/qwerty/punkt/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:18 ../rules/evdev.xml.in.h:18 +#: ../rules/base.xml.in.h:18 msgid "102/qwertz/comma/Dead keys" msgstr "102/qwertz/komma/Stumma tangenter" -#: ../rules/base.xml.in.h:19 ../rules/evdev.xml.in.h:19 +#: ../rules/base.xml.in.h:19 msgid "102/qwertz/comma/Eliminate dead keys" msgstr "102/qwertz/komma/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:20 ../rules/evdev.xml.in.h:20 +#: ../rules/base.xml.in.h:20 msgid "102/qwertz/dot/Dead keys" msgstr "102/qwertz/punkt/Stumma tangenter" -#: ../rules/base.xml.in.h:21 ../rules/evdev.xml.in.h:21 +#: ../rules/base.xml.in.h:21 msgid "102/qwertz/dot/Eliminate dead keys" msgstr "102/qwertz/punkt/Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:22 ../rules/evdev.xml.in.h:22 +#: ../rules/base.xml.in.h:22 msgid "2" msgstr "2" -#: ../rules/base.xml.in.h:23 ../rules/evdev.xml.in.h:23 +#: ../rules/base.xml.in.h:23 msgid "4" msgstr "4" -#: ../rules/base.xml.in.h:24 ../rules/evdev.xml.in.h:24 +#: ../rules/base.xml.in.h:24 msgid "5" msgstr "5" -#: ../rules/base.xml.in.h:25 ../rules/evdev.xml.in.h:25 +#: ../rules/base.xml.in.h:25 msgid "A4Tech KB-21" msgstr "A4Tech KB-21" -#: ../rules/base.xml.in.h:26 ../rules/evdev.xml.in.h:26 +#: ../rules/base.xml.in.h:26 msgid "A4Tech KBS-8" msgstr "A4Tech KBS-8" -#: ../rules/base.xml.in.h:27 ../rules/evdev.xml.in.h:27 +#: ../rules/base.xml.in.h:27 msgid "A4Tech Wireless Desktop RFKB-23" msgstr "A4Tech Wireless Desktop RFKB-23" -#: ../rules/base.xml.in.h:28 ../rules/evdev.xml.in.h:28 +#: ../rules/base.xml.in.h:28 msgid "ACPI Standard" msgstr "ACPI-standard" -#: ../rules/base.xml.in.h:29 ../rules/evdev.xml.in.h:29 +#: ../rules/base.xml.in.h:29 msgid "ATM/phone-style" -msgstr "Bankomat/telefonliknande" +msgstr "Knappsats/telefonliknande" -#: ../rules/base.xml.in.h:30 ../rules/evdev.xml.in.h:30 +#: ../rules/base.xml.in.h:30 msgid "Acer AirKey V" msgstr "Acer AirKey V" -#: ../rules/base.xml.in.h:31 ../rules/evdev.xml.in.h:31 +#: ../rules/base.xml.in.h:31 msgid "Acer C300" msgstr "Acer C300" -#: ../rules/base.xml.in.h:32 ../rules/evdev.xml.in.h:32 +#: ../rules/base.xml.in.h:32 msgid "Acer Ferrari 4000" msgstr "Acer Ferrari 4000" -#: ../rules/base.xml.in.h:33 ../rules/evdev.xml.in.h:33 +#: ../rules/base.xml.in.h:33 msgid "Acer Laptop" msgstr "Bärbar Acer-dator" -#: ../rules/base.xml.in.h:34 ../rules/evdev.xml.in.h:34 +#: ../rules/base.xml.in.h:34 msgid "Add the standard behavior to Menu key" msgstr "Lägg till standardbeteendet till Meny-tangenten" -#: ../rules/base.xml.in.h:35 ../rules/evdev.xml.in.h:35 +#: ../rules/base.xml.in.h:35 msgid "Adding Esperanto circumflexes (supersigno)" msgstr "Lägger till Esperanto-circumflex (supersigno)" -#: ../rules/base.xml.in.h:36 ../rules/evdev.xml.in.h:36 +#: ../rules/base.xml.in.h:36 msgid "Adding EuroSign to certain keys" msgstr "Lägger till eurotecknet till vissa tangenter" -#: ../rules/base.xml.in.h:37 ../rules/evdev.xml.in.h:37 +#: ../rules/base.xml.in.h:37 msgid "Advance Scorpius KI" msgstr "Advance Scorpius KI" -#: ../rules/base.xml.in.h:38 ../rules/evdev.xml.in.h:38 +#: ../rules/base.xml.in.h:38 msgid "Afg" msgstr "Afg" -#: ../rules/base.xml.in.h:39 ../rules/evdev.xml.in.h:39 +#: ../rules/base.xml.in.h:39 msgid "Afghanistan" msgstr "Afganistan" -#: ../rules/base.xml.in.h:40 ../rules/evdev.xml.in.h:40 +#: ../rules/base.xml.in.h:40 msgid "Akan" msgstr "Akan" -#: ../rules/base.xml.in.h:41 ../rules/evdev.xml.in.h:41 +#: ../rules/base.xml.in.h:41 msgid "Alb" msgstr "Alb" -#: ../rules/base.xml.in.h:42 ../rules/evdev.xml.in.h:42 +#: ../rules/base.xml.in.h:42 msgid "Albania" msgstr "Albanien" -#: ../rules/base.xml.in.h:43 ../rules/evdev.xml.in.h:43 +#: ../rules/base.xml.in.h:43 msgid "Alt and Meta are on Alt keys" msgstr "Alt och Meta finns pÃ¥ Alt-tangenterna" -#: ../rules/base.xml.in.h:44 ../rules/evdev.xml.in.h:44 +#: ../rules/base.xml.in.h:44 msgid "Alt is mapped to Right Win, Super to Menu" msgstr "Alt är mappad till högra Win-tangenten och Super till Meny" -#: ../rules/base.xml.in.h:45 ../rules/evdev.xml.in.h:45 +#: ../rules/base.xml.in.h:45 msgid "Alt+CapsLock" msgstr "Alt+CapsLock" -#: ../rules/base.xml.in.h:46 ../rules/evdev.xml.in.h:46 +#: ../rules/base.xml.in.h:46 msgid "Alt+Ctrl" msgstr "Alt+Ctrl" -#: ../rules/base.xml.in.h:47 ../rules/evdev.xml.in.h:47 +#: ../rules/base.xml.in.h:47 msgid "Alt+Shift" msgstr "Alt+Skift" -#: ../rules/base.xml.in.h:48 ../rules/evdev.xml.in.h:48 +#: ../rules/base.xml.in.h:48 msgid "Alt+Space" msgstr "Alt+Blanksteg" -#: ../rules/base.xml.in.h:49 ../rules/evdev.xml.in.h:49 +#: ../rules/base.xml.in.h:49 msgid "Alt-Q" msgstr "Alt-Q" -#: ../rules/base.xml.in.h:50 ../rules/evdev.xml.in.h:50 +#: ../rules/base.xml.in.h:50 msgid "Alt/Win key behavior" msgstr "Alt/Win-tangentbeteende" -#: ../rules/base.xml.in.h:51 ../rules/evdev.xml.in.h:51 +#: ../rules/base.xml.in.h:51 msgid "Alternative" msgstr "Alternativ" -#: ../rules/base.xml.in.h:52 ../rules/evdev.xml.in.h:52 +#: ../rules/base.xml.in.h:52 msgid "Alternative Eastern" msgstr "Alternativ östlig" -#: ../rules/base.xml.in.h:53 ../rules/evdev.xml.in.h:53 +#: ../rules/base.xml.in.h:53 msgid "Alternative Phonetic" msgstr "Alternativ fonetisk" -#: ../rules/base.xml.in.h:54 ../rules/evdev.xml.in.h:54 +#: ../rules/base.xml.in.h:54 msgid "Alternative international (former us_intl)" msgstr "Alternativ internationell (tidigare us_intl)" -#: ../rules/base.xml.in.h:55 ../rules/evdev.xml.in.h:55 +#: ../rules/base.xml.in.h:55 msgid "Alternative, Sun dead keys" msgstr "Alternativ, Sun stumma tangenter" -#: ../rules/base.xml.in.h:56 ../rules/evdev.xml.in.h:56 +#: ../rules/base.xml.in.h:56 msgid "Alternative, eliminate dead keys" msgstr "Alternativ, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:57 ../rules/evdev.xml.in.h:57 +#: ../rules/base.xml.in.h:57 msgid "Alternative, latin-9 only" msgstr "Alternativ, endast latin-9" -#: ../rules/base.xml.in.h:58 ../rules/evdev.xml.in.h:58 +#: ../rules/base.xml.in.h:58 msgid "And" msgstr "And" -#: ../rules/base.xml.in.h:59 ../rules/evdev.xml.in.h:59 +#: ../rules/base.xml.in.h:59 msgid "Andorra" msgstr "Andorra" -#: ../rules/base.xml.in.h:60 ../rules/evdev.xml.in.h:60 +#: ../rules/base.xml.in.h:60 msgid "Any Alt key" msgstr "Valfri Alt-tangent" -#: ../rules/base.xml.in.h:61 ../rules/evdev.xml.in.h:61 +#: ../rules/base.xml.in.h:61 msgid "Any Win key" msgstr "Valfri Win-tangent" -#: ../rules/base.xml.in.h:62 ../rules/evdev.xml.in.h:62 +#: ../rules/base.xml.in.h:62 msgid "Any Win key (while pressed)" msgstr "Valfri Win-tangent (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:63 ../rules/evdev.xml.in.h:63 +#: ../rules/base.xml.in.h:63 msgid "Apostrophe (') variant" msgstr "Apostrof (') variant" -#: ../rules/base.xml.in.h:64 ../rules/evdev.xml.in.h:64 +#: ../rules/base.xml.in.h:64 msgid "Apple" msgstr "Apple" -#: ../rules/base.xml.in.h:65 ../rules/evdev.xml.in.h:65 +#: ../rules/base.xml.in.h:65 msgid "Apple Laptop" msgstr "Bärbar Apple-dator" -#: ../rules/base.xml.in.h:66 ../rules/evdev.xml.in.h:66 +#: ../rules/base.xml.in.h:66 msgid "Ara" msgstr "Ara" -#: ../rules/base.xml.in.h:67 ../rules/evdev.xml.in.h:67 +#: ../rules/base.xml.in.h:67 msgid "Arabic" msgstr "Arabisk" -#: ../rules/base.xml.in.h:68 ../rules/evdev.xml.in.h:68 +#: ../rules/base.xml.in.h:68 msgid "Arm" msgstr "Arm" -#: ../rules/base.xml.in.h:69 ../rules/evdev.xml.in.h:69 +#: ../rules/base.xml.in.h:69 msgid "Armenia" msgstr "Armenien" -#: ../rules/base.xml.in.h:70 ../rules/evdev.xml.in.h:70 +#: ../rules/base.xml.in.h:70 msgid "Asturian variant with bottom-dot H and bottom-dot L" msgstr "Asturisk variant med nederpunkts H och nederpunkts L" -#: ../rules/base.xml.in.h:71 ../rules/evdev.xml.in.h:71 +#: ../rules/base.xml.in.h:71 msgid "Asus Laptop" msgstr "Bärbar Asus-dator" -#: ../rules/base.xml.in.h:72 ../rules/evdev.xml.in.h:72 +#: ../rules/base.xml.in.h:72 msgid "At bottom left" msgstr "Nere till vänster" -#: ../rules/base.xml.in.h:73 ../rules/evdev.xml.in.h:73 +#: ../rules/base.xml.in.h:73 msgid "At left of 'A'" msgstr "Vänster om \"A\"" -#: ../rules/base.xml.in.h:74 ../rules/evdev.xml.in.h:74 +#: ../rules/base.xml.in.h:74 msgid "Aze" msgstr "Aze" -#: ../rules/base.xml.in.h:75 ../rules/evdev.xml.in.h:75 +#: ../rules/base.xml.in.h:75 msgid "Azerbaijan" msgstr "Azerbajdzjan" -#: ../rules/base.xml.in.h:76 ../rules/evdev.xml.in.h:76 +#: ../rules/base.xml.in.h:76 msgid "Azona RF2300 wireless Internet Keyboard" msgstr "Azona RF2300 wireless Internet Keyboard" -#: ../rules/base.xml.in.h:77 ../rules/evdev.xml.in.h:77 +#: ../rules/base.xml.in.h:77 msgid "BTC 5090" msgstr "BTC 5090" -#: ../rules/base.xml.in.h:78 ../rules/evdev.xml.in.h:78 +#: ../rules/base.xml.in.h:78 msgid "BTC 5113RF Multimedia" msgstr "BTC 5113RF Multimedia" -#: ../rules/base.xml.in.h:79 ../rules/evdev.xml.in.h:79 +#: ../rules/base.xml.in.h:79 msgid "BTC 5126T" msgstr "BTC 5126T" -#: ../rules/base.xml.in.h:80 ../rules/evdev.xml.in.h:80 +#: ../rules/base.xml.in.h:80 msgid "BTC 6301URF" msgstr "BTC 6301URF" -#: ../rules/base.xml.in.h:81 ../rules/evdev.xml.in.h:81 +#: ../rules/base.xml.in.h:81 msgid "BTC 9000" msgstr "BTC 9000" -#: ../rules/base.xml.in.h:82 ../rules/evdev.xml.in.h:82 +#: ../rules/base.xml.in.h:82 msgid "BTC 9000A" msgstr "BTC 9000A" -#: ../rules/base.xml.in.h:83 ../rules/evdev.xml.in.h:83 +#: ../rules/base.xml.in.h:83 msgid "BTC 9001AH" msgstr "BTC 9001AH" -#: ../rules/base.xml.in.h:84 ../rules/evdev.xml.in.h:84 +#: ../rules/base.xml.in.h:84 msgid "BTC 9019U" msgstr "BTC 9019U" -#: ../rules/base.xml.in.h:85 ../rules/evdev.xml.in.h:85 +#: ../rules/base.xml.in.h:85 msgid "BTC 9116U Mini Wireless Internet and Gaming" msgstr "BTC 9116U Mini Wireless Internet and Gaming" -#: ../rules/base.xml.in.h:86 ../rules/evdev.xml.in.h:86 +#: ../rules/base.xml.in.h:86 +msgid "Baltic+" +msgstr "Baltisk+" + +#: ../rules/base.xml.in.h:87 msgid "Ban" msgstr "Ban" -#: ../rules/base.xml.in.h:87 ../rules/evdev.xml.in.h:87 +#: ../rules/base.xml.in.h:88 msgid "Bangladesh" msgstr "Bangladesh" -#: ../rules/base.xml.in.h:88 ../rules/evdev.xml.in.h:88 +#: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Basjkiriska" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:89 ../rules/evdev.xml.in.h:89 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Vitryssland" -#: ../rules/base.xml.in.h:90 ../rules/evdev.xml.in.h:90 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Belgien" -#: ../rules/base.xml.in.h:91 ../rules/evdev.xml.in.h:91 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:92 ../rules/evdev.xml.in.h:92 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:93 ../rules/evdev.xml.in.h:93 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:94 ../rules/evdev.xml.in.h:94 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Bengalisk" -#: ../rules/base.xml.in.h:95 ../rules/evdev.xml.in.h:95 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Bengali Probhat" -#: ../rules/base.xml.in.h:96 ../rules/evdev.xml.in.h:96 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, ergonomisk, Dvorak" -#: ../rules/base.xml.in.h:97 ../rules/evdev.xml.in.h:97 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, ergonomisk, Dvorak, endast latin-9" -#: ../rules/base.xml.in.h:98 ../rules/evdev.xml.in.h:98 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:99 ../rules/evdev.xml.in.h:99 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:100 ../rules/evdev.xml.in.h:100 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhutan" -#: ../rules/base.xml.in.h:101 ../rules/evdev.xml.in.h:101 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Biblisk hebreisk (Tiro)" -#: ../rules/base.xml.in.h:102 ../rules/evdev.xml.in.h:102 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:103 ../rules/evdev.xml.in.h:103 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:104 ../rules/evdev.xml.in.h:104 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bosnien och Herzegovina" -#: ../rules/base.xml.in.h:105 ../rules/evdev.xml.in.h:105 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "BÃ¥da Alt-tangenterna tillsammans" -#: ../rules/base.xml.in.h:106 ../rules/evdev.xml.in.h:106 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "BÃ¥da Ctrl-tangenterna tillsammans" -#: ../rules/base.xml.in.h:107 ../rules/evdev.xml.in.h:107 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "BÃ¥da Skift-tangenterna tillsammans" -#: ../rules/base.xml.in.h:108 ../rules/evdev.xml.in.h:108 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:109 ../rules/evdev.xml.in.h:109 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Braille" -#: ../rules/base.xml.in.h:110 ../rules/evdev.xml.in.h:110 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Brasilien" -#: ../rules/base.xml.in.h:111 ../rules/evdev.xml.in.h:111 -msgid "Brazilian ABNT2" -msgstr "Brasiliansk ABNT2" - -#: ../rules/base.xml.in.h:112 ../rules/evdev.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Breton" -#: ../rules/base.xml.in.h:113 ../rules/evdev.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 ../rules/evdev.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Brother Internettangentbord" -#: ../rules/base.xml.in.h:115 ../rules/evdev.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 ../rules/evdev.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bulgarien" -#: ../rules/base.xml.in.h:117 ../rules/evdev.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 ../rules/evdev.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Cambodia" -#: ../rules/base.xml.in.h:119 ../rules/evdev.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 ../rules/evdev.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Kanada" -#: ../rules/base.xml.in.h:121 ../rules/evdev.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 ../rules/evdev.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 ../rules/evdev.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (till första layouten), Skift+CapsLock (till sista layouten)" -#: ../rules/base.xml.in.h:124 ../rules/evdev.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (när den trycks ned), Alt+CapsLock gör ursprunglig capslock-Ã¥tgärd" -#: ../rules/base.xml.in.h:125 ../rules/evdev.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" -msgstr "CapsLock fungerar som Skift med lÃ¥sning. Skift \"pausar\" Caps Lock" +msgstr "CapsLock fungerar som Skift med lÃ¥sning. Skift \"pausar\" CapsLock" -#: ../rules/base.xml.in.h:126 ../rules/evdev.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock fungerar som Skift med lÃ¥sning. Skift pÃ¥verkar inte CapsLock" -#: ../rules/base.xml.in.h:127 ../rules/evdev.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock är inaktiverad" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" -msgstr "Beteende för Caps Lock-tangenten" +msgstr "Beteende för CapsLock-tangenten" -#: ../rules/base.xml.in.h:128 ../rules/evdev.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock växlar Skift sÃ¥ alla tangenter pÃ¥verkas" -#: ../rules/base.xml.in.h:129 ../rules/evdev.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock växlar normalt skiftläge pÃ¥ alfabetiska tecken" -#: ../rules/base.xml.in.h:130 ../rules/evdev.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock använder intern skiftlägesstyrning. Skift \"pausar\" CapsLock" -#: ../rules/base.xml.in.h:131 ../rules/evdev.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock använder intern skiftlägesstyrning. Skift pÃ¥verkar inte CapsLock" -#: ../rules/base.xml.in.h:132 ../rules/evdev.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Katalansk variant med mittenpunkts L" -#: ../rules/base.xml.in.h:133 ../rules/evdev.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilj" -#: ../rules/base.xml.in.h:134 ../rules/evdev.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 ../rules/evdev.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Cherokee" -#: ../rules/base.xml.in.h:136 ../rules/evdev.xml.in.h:136 +#: ../rules/base.xml.in.h:138 +msgid "Cherry B.UNLIMITED" +msgstr "Cherry B.UNLIMITED" + +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:137 ../rules/evdev.xml.in.h:137 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (alternativ)" -#: ../rules/base.xml.in.h:138 ../rules/evdev.xml.in.h:138 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd USB-hubb" -#: ../rules/base.xml.in.h:139 ../rules/evdev.xml.in.h:139 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:140 ../rules/evdev.xml.in.h:140 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:141 ../rules/evdev.xml.in.h:141 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:142 ../rules/evdev.xml.in.h:142 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Chicony Internettangentbord" -#: ../rules/base.xml.in.h:143 ../rules/evdev.xml.in.h:143 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:144 ../rules/evdev.xml.in.h:144 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:145 ../rules/evdev.xml.in.h:145 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:146 ../rules/evdev.xml.in.h:146 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Kina" -#: ../rules/base.xml.in.h:147 ../rules/evdev.xml.in.h:147 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Tjuvasjiska" -#: ../rules/base.xml.in.h:148 ../rules/evdev.xml.in.h:148 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Tjuvasjiska latin" -#: ../rules/base.xml.in.h:149 ../rules/evdev.xml.in.h:149 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Klassisk" -#: ../rules/base.xml.in.h:150 ../rules/evdev.xml.in.h:150 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Klassisk Dvorak" -#: ../rules/base.xml.in.h:151 ../rules/evdev.xml.in.h:151 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:152 ../rules/evdev.xml.in.h:152 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:153 ../rules/evdev.xml.in.h:153 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:154 ../rules/evdev.xml.in.h:154 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Compaq Easy Access-tangentbord" -#: ../rules/base.xml.in.h:155 ../rules/evdev.xml.in.h:155 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Compaq Internettangentbord (13 tangenter)" -#: ../rules/base.xml.in.h:156 ../rules/evdev.xml.in.h:156 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Compaq Internettangentbord (18 tangenter)" -#: ../rules/base.xml.in.h:157 ../rules/evdev.xml.in.h:157 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Compaq Internettangentbord (7 tangenter)" -#: ../rules/base.xml.in.h:158 ../rules/evdev.xml.in.h:158 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Compaq iPaq-tangentbord" -#: ../rules/base.xml.in.h:159 ../rules/evdev.xml.in.h:159 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Position för Compose-tangenten" -#: ../rules/base.xml.in.h:160 ../rules/evdev.xml.in.h:160 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Kongo, Demokratiska republiken" -#: ../rules/base.xml.in.h:161 ../rules/evdev.xml.in.h:161 +#: ../rules/base.xml.in.h:164 +msgid "Control + Alt + Backspace" +msgstr "Control + Alt + Backsteg" + +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Control är mappad till Win-tangenterna, Alt-tangenten är mappad till Win-tangenterna" -#: ../rules/base.xml.in.h:162 ../rules/evdev.xml.in.h:162 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Control är mappad till Win-tangenterna (och de vanliga Ctrl-tangenterna)" -#: ../rules/base.xml.in.h:163 ../rules/evdev.xml.in.h:163 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 +msgid "Crimean Tatar (Dobruca-1 Q)" +msgstr "Krimtatariska (Dobruca-1 Q)" + +#: ../rules/base.xml.in.h:169 +msgid "Crimean Tatar (Dobruca-2 Q)" +msgstr "Krimtatariska (Dobruca-2 Q)" + +#: ../rules/base.xml.in.h:170 +msgid "Crimean Tatar (Turkish Alt-Q)" +msgstr "Krimtatariska (Turkiska Alt-Q)" + +#: ../rules/base.xml.in.h:171 +msgid "Crimean Tatar (Turkish F)" +msgstr "Krimtatariska (Turkiska F)" + +#: ../rules/base.xml.in.h:172 +msgid "Crimean Tatar (Turkish Q)" +msgstr "Krimtatariska (Turkiska Q)" + +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Kroatien" -#: ../rules/base.xml.in.h:164 ../rules/evdev.xml.in.h:164 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Position för Ctrl-tangenten" -#: ../rules/base.xml.in.h:165 ../rules/evdev.xml.in.h:165 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Skift" -#: ../rules/base.xml.in.h:166 ../rules/evdev.xml.in.h:166 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Kyrillisk" -#: ../rules/base.xml.in.h:167 ../rules/evdev.xml.in.h:167 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Kyrillisk med gÃ¥sögon" -#: ../rules/base.xml.in.h:168 ../rules/evdev.xml.in.h:168 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Kyrillisk, Z och ZHE utbytta" -#: ../rules/base.xml.in.h:169 ../rules/evdev.xml.in.h:169 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:170 ../rules/evdev.xml.in.h:170 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Tjeckien" -#: ../rules/base.xml.in.h:171 ../rules/evdev.xml.in.h:171 +#: ../rules/base.xml.in.h:181 +msgid "DOS" +msgstr "DOS" + +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:172 ../rules/evdev.xml.in.h:172 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:173 ../rules/evdev.xml.in.h:173 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:174 ../rules/evdev.xml.in.h:174 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Stum akut accent" -#: ../rules/base.xml.in.h:175 ../rules/evdev.xml.in.h:175 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Stum grav och akut accent" -#: ../rules/base.xml.in.h:176 ../rules/evdev.xml.in.h:176 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Standardtangenter för numeriskt tangentbord" -#: ../rules/base.xml.in.h:177 ../rules/evdev.xml.in.h:177 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:178 ../rules/evdev.xml.in.h:178 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell 101-tangenters PC" -#: ../rules/base.xml.in.h:179 ../rules/evdev.xml.in.h:179 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Bärbar Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:180 ../rules/evdev.xml.in.h:180 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Bärbar Dell Precision M series" -#: ../rules/base.xml.in.h:181 ../rules/evdev.xml.in.h:181 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Bärbar Dell Latitude-serien" -#: ../rules/base.xml.in.h:182 ../rules/evdev.xml.in.h:182 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:183 ../rules/evdev.xml.in.h:183 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:184 ../rules/evdev.xml.in.h:184 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:185 ../rules/evdev.xml.in.h:185 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Dell USB-multimediatangentbord" -#: ../rules/base.xml.in.h:186 ../rules/evdev.xml.in.h:186 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Danmark" -#: ../rules/base.xml.in.h:187 ../rules/evdev.xml.in.h:187 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:188 ../rules/evdev.xml.in.h:188 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Dexxa trÃ¥dlöst skrivbordstangentbord" -#: ../rules/base.xml.in.h:189 ../rules/evdev.xml.in.h:189 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Diamond 9801/9802-serien" -#: ../rules/base.xml.in.h:190 ../rules/evdev.xml.in.h:190 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:191 ../rules/evdev.xml.in.h:191 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (brittisk-engelska skiljetecken)" -#: ../rules/base.xml.in.h:192 ../rules/evdev.xml.in.h:192 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak internationell" -#: ../rules/base.xml.in.h:193 ../rules/evdev.xml.in.h:193 -msgid "Dvorak, Polish quotes on key \"1/!\"" -msgstr "Dvorak, polska citattecken pÃ¥ tangent \"1/!\"" +#: ../rules/base.xml.in.h:204 +msgid "Dvorak, Polish quotes on key 1" +msgstr "Dvorak, polska citattecken pÃ¥ tangent 1" -#: ../rules/base.xml.in.h:194 ../rules/evdev.xml.in.h:194 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, polska citattecken pÃ¥ citattangent" -#: ../rules/base.xml.in.h:195 ../rules/evdev.xml.in.h:195 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:196 ../rules/evdev.xml.in.h:196 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Östlig" -#: ../rules/base.xml.in.h:197 ../rules/evdev.xml.in.h:197 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "Eliminera stumma tangenter" -#: ../rules/base.xml.in.h:198 ../rules/evdev.xml.in.h:198 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Aktivera extra typografiska tecken" -#: ../rules/base.xml.in.h:199 ../rules/evdev.xml.in.h:199 +#: ../rules/base.xml.in.h:210 +msgid "English" +msgstr "Engelsk" + +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:200 ../rules/evdev.xml.in.h:200 +#: ../rules/base.xml.in.h:212 +msgid "Enter on keypad" +msgstr "Enter pÃ¥ numeriskt tangentbord" + +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:201 ../rules/evdev.xml.in.h:201 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Ergonomisk" -#: ../rules/base.xml.in.h:202 ../rules/evdev.xml.in.h:202 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:203 ../rules/evdev.xml.in.h:203 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Esperanto" -#: ../rules/base.xml.in.h:204 ../rules/evdev.xml.in.h:204 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:205 ../rules/evdev.xml.in.h:205 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Estland" -#: ../rules/base.xml.in.h:206 ../rules/evdev.xml.in.h:206 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:207 ../rules/evdev.xml.in.h:207 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Etiopien" -#: ../rules/base.xml.in.h:208 ../rules/evdev.xml.in.h:208 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Evdev-hanterat tangentbord" -#: ../rules/base.xml.in.h:209 ../rules/evdev.xml.in.h:209 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:210 ../rules/evdev.xml.in.h:210 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:211 ../rules/evdev.xml.in.h:211 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Utökad" -#: ../rules/base.xml.in.h:212 ../rules/evdev.xml.in.h:212 +#: ../rules/base.xml.in.h:225 +msgid "Extended - Winkeys" +msgstr "Utökat - Windows-tangenter" + +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Utökat omvänt snedstreck" -#: ../rules/base.xml.in.h:213 ../rules/evdev.xml.in.h:213 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "F-bokstavs (F) variant" -#: ../rules/base.xml.in.h:214 ../rules/evdev.xml.in.h:214 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:215 ../rules/evdev.xml.in.h:215 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:216 ../rules/evdev.xml.in.h:216 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Färöarna" -#: ../rules/base.xml.in.h:217 ../rules/evdev.xml.in.h:217 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:218 ../rules/evdev.xml.in.h:218 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Finland" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:221 ../rules/evdev.xml.in.h:221 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "FjärdenivÃ¥stangent med abstrakta avgränsare" -#: ../rules/base.xml.in.h:222 ../rules/evdev.xml.in.h:222 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "FjärdenivÃ¥stangent med komma" -#: ../rules/base.xml.in.h:223 ../rules/evdev.xml.in.h:223 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "FjärdenivÃ¥stangent med punkt" -#: ../rules/base.xml.in.h:224 ../rules/evdev.xml.in.h:224 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "FjärdenivÃ¥stangent med punkt, latin-9-begränsning" -#: ../rules/base.xml.in.h:225 ../rules/evdev.xml.in.h:225 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "FjärdenivÃ¥stangent med momayyez" -#: ../rules/base.xml.in.h:226 ../rules/evdev.xml.in.h:226 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:227 ../rules/evdev.xml.in.h:227 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Frankrike" -#: ../rules/base.xml.in.h:228 ../rules/evdev.xml.in.h:228 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Fransk" -#: ../rules/base.xml.in.h:229 ../rules/evdev.xml.in.h:229 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Fransk (Macintosh)" -#: ../rules/base.xml.in.h:230 ../rules/evdev.xml.in.h:230 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Fransk (äldre)" -#: ../rules/base.xml.in.h:231 ../rules/evdev.xml.in.h:231 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Fransk Dvorak" -#: ../rules/base.xml.in.h:232 ../rules/evdev.xml.in.h:232 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Fransk, Sun stumma tangenter" -#: ../rules/base.xml.in.h:233 ../rules/evdev.xml.in.h:233 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Fransk, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:234 ../rules/evdev.xml.in.h:234 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Fujitsu-Siemens Computers AMILO bärbar dator" -#: ../rules/base.xml.in.h:235 ../rules/evdev.xml.in.h:235 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:236 ../rules/evdev.xml.in.h:236 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:237 ../rules/evdev.xml.in.h:237 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:238 ../rules/evdev.xml.in.h:238 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "Allmän 101-tangenters PC" -#: ../rules/base.xml.in.h:239 ../rules/evdev.xml.in.h:239 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "Allmän 102-tangenters (internationell) PC" -#: ../rules/base.xml.in.h:240 ../rules/evdev.xml.in.h:240 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "Allmän 104-tangenters PC" -#: ../rules/base.xml.in.h:241 ../rules/evdev.xml.in.h:241 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "Allmän 105-tangenters (internationell) PC" -#: ../rules/base.xml.in.h:242 ../rules/evdev.xml.in.h:242 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:243 ../rules/evdev.xml.in.h:243 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Comfy KB-16M / Genius MM-tangentbord KWD-910" -#: ../rules/base.xml.in.h:244 ../rules/evdev.xml.in.h:244 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" -#: ../rules/base.xml.in.h:245 ../rules/evdev.xml.in.h:245 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" -#: ../rules/base.xml.in.h:246 ../rules/evdev.xml.in.h:246 +#: ../rules/base.xml.in.h:260 +msgid "Genius KKB-2050HS" +msgstr "Genius KKB-2050HS" + +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:247 ../rules/evdev.xml.in.h:247 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Georgien" -#: ../rules/base.xml.in.h:248 ../rules/evdev.xml.in.h:248 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Georgisk" -#: ../rules/base.xml.in.h:249 ../rules/evdev.xml.in.h:249 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Georgian AZERTY Tskapo" -#: ../rules/base.xml.in.h:250 ../rules/evdev.xml.in.h:250 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Tysk (Macintosh)" -#: ../rules/base.xml.in.h:251 ../rules/evdev.xml.in.h:251 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Tysk, Sun stumma tangenter" -#: ../rules/base.xml.in.h:252 ../rules/evdev.xml.in.h:252 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Tysk, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:253 ../rules/evdev.xml.in.h:253 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Tyskland" -#: ../rules/base.xml.in.h:254 ../rules/evdev.xml.in.h:254 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:255 ../rules/evdev.xml.in.h:255 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Ghana" -#: ../rules/base.xml.in.h:256 ../rules/evdev.xml.in.h:256 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:257 ../rules/evdev.xml.in.h:257 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Grekland" -#: ../rules/base.xml.in.h:258 ../rules/evdev.xml.in.h:258 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Gruppväxling pÃ¥ multiplicera/dividera-tangent" -#: ../rules/base.xml.in.h:259 ../rules/evdev.xml.in.h:259 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:260 ../rules/evdev.xml.in.h:260 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Guinea" -#: ../rules/base.xml.in.h:261 ../rules/evdev.xml.in.h:261 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gujaratisk" -#: ../rules/base.xml.in.h:262 ../rules/evdev.xml.in.h:262 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gurmukhisk" -#: ../rules/base.xml.in.h:263 ../rules/evdev.xml.in.h:263 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gurmukhi Jhelum" -#: ../rules/base.xml.in.h:264 ../rules/evdev.xml.in.h:264 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Gyration" -#: ../rules/base.xml.in.h:265 ../rules/evdev.xml.in.h:265 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Happy Hacking-tangentbord" -#: ../rules/base.xml.in.h:266 ../rules/evdev.xml.in.h:266 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Happy Hacking-tangentbord för Mac" -#: ../rules/base.xml.in.h:267 ../rules/evdev.xml.in.h:267 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hausa" -#: ../rules/base.xml.in.h:268 ../rules/evdev.xml.in.h:268 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Hewlett-Packard Internettangentbord" -#: ../rules/base.xml.in.h:269 ../rules/evdev.xml.in.h:269 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:270 ../rules/evdev.xml.in.h:270 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:271 ../rules/evdev.xml.in.h:271 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:272 ../rules/evdev.xml.in.h:272 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:273 ../rules/evdev.xml.in.h:273 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:274 ../rules/evdev.xml.in.h:274 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:275 ../rules/evdev.xml.in.h:275 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:276 ../rules/evdev.xml.in.h:276 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:277 ../rules/evdev.xml.in.h:277 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Hewlett-Packard SK-250x Multimedia Keyboard" -#: ../rules/base.xml.in.h:278 ../rules/evdev.xml.in.h:278 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:279 ../rules/evdev.xml.in.h:279 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Hexadecimal" -#: ../rules/base.xml.in.h:280 ../rules/evdev.xml.in.h:280 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hindi bolnagri" -#: ../rules/base.xml.in.h:281 ../rules/evdev.xml.in.h:281 +#: ../rules/base.xml.in.h:296 +msgid "Hindi Wx" +msgstr "Hindi Wx" + +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Homofonisk" -#: ../rules/base.xml.in.h:282 ../rules/evdev.xml.in.h:282 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:283 ../rules/evdev.xml.in.h:283 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:284 ../rules/evdev.xml.in.h:284 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:285 ../rules/evdev.xml.in.h:285 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Ungern" -#: ../rules/base.xml.in.h:286 ../rules/evdev.xml.in.h:286 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper är mappad till Win-tangenterna" -#: ../rules/base.xml.in.h:287 ../rules/evdev.xml.in.h:287 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:288 ../rules/evdev.xml.in.h:288 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "IBM Rapid Access" -#: ../rules/base.xml.in.h:289 ../rules/evdev.xml.in.h:289 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "IBM Rapid Access II" -#: ../rules/base.xml.in.h:290 ../rules/evdev.xml.in.h:290 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:291 ../rules/evdev.xml.in.h:291 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:292 ../rules/evdev.xml.in.h:292 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, Intl" -#: ../rules/base.xml.in.h:293 ../rules/evdev.xml.in.h:293 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:294 ../rules/evdev.xml.in.h:294 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:295 ../rules/evdev.xml.in.h:295 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO-alternativ" -#: ../rules/base.xml.in.h:296 ../rules/evdev.xml.in.h:296 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Island" -#: ../rules/base.xml.in.h:297 ../rules/evdev.xml.in.h:297 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Igbo" -#: ../rules/base.xml.in.h:298 ../rules/evdev.xml.in.h:298 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Inkludera dött tilde-tecken" -#: ../rules/base.xml.in.h:299 ../rules/evdev.xml.in.h:299 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:300 ../rules/evdev.xml.in.h:300 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Indien" -#: ../rules/base.xml.in.h:301 ../rules/evdev.xml.in.h:301 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Internationell (AltGr med stumma tangenter)" -#: ../rules/base.xml.in.h:302 ../rules/evdev.xml.in.h:302 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Internationell (med stumma tangenter)" -#: ../rules/base.xml.in.h:303 ../rules/evdev.xml.in.h:303 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "Inuktitut" -#: ../rules/base.xml.in.h:304 ../rules/evdev.xml.in.h:304 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "Iran" -#: ../rules/base.xml.in.h:305 ../rules/evdev.xml.in.h:305 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "Irak" -#: ../rules/base.xml.in.h:306 ../rules/evdev.xml.in.h:306 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Irland" -#: ../rules/base.xml.in.h:307 ../rules/evdev.xml.in.h:307 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:308 ../rules/evdev.xml.in.h:308 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:309 ../rules/evdev.xml.in.h:309 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irk" -#: ../rules/base.xml.in.h:310 ../rules/evdev.xml.in.h:310 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:311 ../rules/evdev.xml.in.h:311 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:312 ../rules/evdev.xml.in.h:312 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Israel" -#: ../rules/base.xml.in.h:313 ../rules/evdev.xml.in.h:313 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:314 ../rules/evdev.xml.in.h:314 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Italien" -#: ../rules/base.xml.in.h:315 ../rules/evdev.xml.in.h:315 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Japan" -#: ../rules/base.xml.in.h:316 ../rules/evdev.xml.in.h:316 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Japan (PC-98xx-serien)" -#: ../rules/base.xml.in.h:317 ../rules/evdev.xml.in.h:317 -msgid "Japanese 106-key" -msgstr "Japansk 106-tangenters" - -#: ../rules/base.xml.in.h:318 ../rules/evdev.xml.in.h:318 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Tangentbordsalternativ för japanska" -#: ../rules/base.xml.in.h:319 ../rules/evdev.xml.in.h:319 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:320 ../rules/evdev.xml.in.h:320 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" # Även kanaresisk (äldre form) -#: ../rules/base.xml.in.h:321 ../rules/evdev.xml.in.h:321 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:322 ../rules/evdev.xml.in.h:322 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "Kana Lock-tangent lÃ¥ser" # Även kanaresisk (äldre form) -#: ../rules/base.xml.in.h:323 ../rules/evdev.xml.in.h:323 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:324 ../rules/evdev.xml.in.h:324 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kashubian" -#: ../rules/base.xml.in.h:325 ../rules/evdev.xml.in.h:325 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:326 ../rules/evdev.xml.in.h:326 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kazakisk med ryska" -#: ../rules/base.xml.in.h:327 ../rules/evdev.xml.in.h:327 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kazakstan" -#: ../rules/base.xml.in.h:328 ../rules/evdev.xml.in.h:328 +#: ../rules/base.xml.in.h:343 +msgid "Key sequence to kill the X server" +msgstr "Tangentsekvens för att döda X-servern" + +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "Tangent för att välja tredje nivÃ¥" -#: ../rules/base.xml.in.h:329 ../rules/evdev.xml.in.h:329 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "Tangent(er) för att byta layout" -#: ../rules/base.xml.in.h:330 ../rules/evdev.xml.in.h:330 -msgid "Keypad" -msgstr "Knappsats" - -#: ../rules/base.xml.in.h:331 ../rules/evdev.xml.in.h:331 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:332 ../rules/evdev.xml.in.h:332 +#: ../rules/base.xml.in.h:347 +msgid "Kgz" +msgstr "Kgz" + +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:333 ../rules/evdev.xml.in.h:333 -msgid "Kir" -msgstr "Kir" - -#: ../rules/base.xml.in.h:334 ../rules/evdev.xml.in.h:334 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:335 ../rules/evdev.xml.in.h:335 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:336 ../rules/evdev.xml.in.h:336 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Korea, Republiken" -#: ../rules/base.xml.in.h:337 ../rules/evdev.xml.in.h:337 -msgid "Korean 106-key" -msgstr "Koreansk 106-tangenters" - -#: ../rules/base.xml.in.h:338 ../rules/evdev.xml.in.h:338 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:339 ../rules/evdev.xml.in.h:339 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kurdisk, (F)" -#: ../rules/base.xml.in.h:340 ../rules/evdev.xml.in.h:340 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kurdisk, Arabisk-Latin" -#: ../rules/base.xml.in.h:341 ../rules/evdev.xml.in.h:341 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kurdisk, Latin Alt-Q" -#: ../rules/base.xml.in.h:342 ../rules/evdev.xml.in.h:342 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kurdisk, Latin Q" -#: ../rules/base.xml.in.h:343 ../rules/evdev.xml.in.h:343 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kirgizistan" -#: ../rules/base.xml.in.h:344 ../rules/evdev.xml.in.h:344 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:345 ../rules/evdev.xml.in.h:345 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:346 ../rules/evdev.xml.in.h:346 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:347 ../rules/evdev.xml.in.h:347 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Lao" -#: ../rules/base.xml.in.h:348 ../rules/evdev.xml.in.h:348 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Laos" -#: ../rules/base.xml.in.h:349 ../rules/evdev.xml.in.h:349 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Laptop-tangentbord för bärbar Compaq-dator (t.ex. Armada)" -#: ../rules/base.xml.in.h:350 ../rules/evdev.xml.in.h:350 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Internettangentbord för bärbar Compaq-dator (t.ex. Presario)" -#: ../rules/base.xml.in.h:351 ../rules/evdev.xml.in.h:351 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Bärbar eMachines m68xx" -#: ../rules/base.xml.in.h:352 ../rules/evdev.xml.in.h:352 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "Latin" -#: ../rules/base.xml.in.h:353 ../rules/evdev.xml.in.h:353 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "Latin Amerikansk" -#: ../rules/base.xml.in.h:354 ../rules/evdev.xml.in.h:354 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "Latin Unicode" -#: ../rules/base.xml.in.h:355 ../rules/evdev.xml.in.h:355 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "Latin Unicode qwerty" -#: ../rules/base.xml.in.h:356 ../rules/evdev.xml.in.h:356 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "Latin qwerty" -#: ../rules/base.xml.in.h:357 ../rules/evdev.xml.in.h:357 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "Latin unicode" -#: ../rules/base.xml.in.h:358 ../rules/evdev.xml.in.h:358 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "Latin unicode qwerty" -#: ../rules/base.xml.in.h:359 ../rules/evdev.xml.in.h:359 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "Latin med gÃ¥sögon" -#: ../rules/base.xml.in.h:360 ../rules/evdev.xml.in.h:360 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lettland" -#: ../rules/base.xml.in.h:361 ../rules/evdev.xml.in.h:361 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:362 ../rules/evdev.xml.in.h:362 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Vänster alt" -#: ../rules/base.xml.in.h:363 ../rules/evdev.xml.in.h:363 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Vänster Alt (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:364 ../rules/evdev.xml.in.h:364 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Vänster Alt är utbytt med vänster Win-tangent" -#: ../rules/base.xml.in.h:365 ../rules/evdev.xml.in.h:365 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Vänster Ctrl" -#: ../rules/base.xml.in.h:366 ../rules/evdev.xml.in.h:366 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Vänster ctrl+vänster skift" -#: ../rules/base.xml.in.h:367 ../rules/evdev.xml.in.h:367 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Vänster skift" -#: ../rules/base.xml.in.h:368 ../rules/evdev.xml.in.h:368 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Vänster Win-tangent" -#: ../rules/base.xml.in.h:369 ../rules/evdev.xml.in.h:369 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Vänster Win (till första layouten), Höger Win/Meny (till sista layouten)" -#: ../rules/base.xml.in.h:370 ../rules/evdev.xml.in.h:370 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Vänster Win-tangent (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:371 ../rules/evdev.xml.in.h:371 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Vänsterhänt" -#: ../rules/base.xml.in.h:372 ../rules/evdev.xml.in.h:372 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Vänsterhänt Dvorak" -#: ../rules/base.xml.in.h:373 ../rules/evdev.xml.in.h:373 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Äldre" -#: ../rules/base.xml.in.h:374 ../rules/evdev.xml.in.h:374 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Gammalt Wang 724" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:376 ../rules/evdev.xml.in.h:376 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "Äldre tangent med komma" -#: ../rules/base.xml.in.h:377 ../rules/evdev.xml.in.h:377 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "Äldre tangent med punkt" -#: ../rules/base.xml.in.h:378 ../rules/evdev.xml.in.h:378 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Mindre än/Större än" -#: ../rules/base.xml.in.h:379 ../rules/evdev.xml.in.h:379 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Litauen" -#: ../rules/base.xml.in.h:380 ../rules/evdev.xml.in.h:380 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Logitech Access Keyboard" -#: ../rules/base.xml.in.h:381 ../rules/evdev.xml.in.h:381 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:382 ../rules/evdev.xml.in.h:382 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (alternativ)" -#: ../rules/base.xml.in.h:383 ../rules/evdev.xml.in.h:383 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:384 ../rules/evdev.xml.in.h:384 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:385 ../rules/evdev.xml.in.h:385 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:386 ../rules/evdev.xml.in.h:386 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:387 ../rules/evdev.xml.in.h:387 -msgid "Logitech Cordless Desktop Pro (alternate option2)" -msgstr "Logitech Cordless Desktop Pro (alternativ2)" +#: ../rules/base.xml.in.h:401 +msgid "Logitech Cordless Desktop Pro (alternate option 2)" +msgstr "Logitech Cordless Desktop Pro (alternativt val 2)" -#: ../rules/base.xml.in.h:388 ../rules/evdev.xml.in.h:388 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:389 ../rules/evdev.xml.in.h:389 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:390 ../rules/evdev.xml.in.h:390 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 extratangenter via G15daemon" -#: ../rules/base.xml.in.h:391 ../rules/evdev.xml.in.h:391 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Logitech Generic Keyboard" -#: ../rules/base.xml.in.h:392 ../rules/evdev.xml.in.h:392 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Logitech Internet 350 Keyboard" -#: ../rules/base.xml.in.h:393 ../rules/evdev.xml.in.h:393 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Logitech Internettangentbord" -#: ../rules/base.xml.in.h:394 ../rules/evdev.xml.in.h:394 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Logitech Internet Navigator-tangentbord" -#: ../rules/base.xml.in.h:395 ../rules/evdev.xml.in.h:395 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Logitech Media Elite Keyboard" -#: ../rules/base.xml.in.h:396 ../rules/evdev.xml.in.h:396 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Logitech Ultra-X Cordless Media Desktop Keyboard" -#: ../rules/base.xml.in.h:397 ../rules/evdev.xml.in.h:397 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Logitech Ultra-X Keyboard" -#: ../rules/base.xml.in.h:398 ../rules/evdev.xml.in.h:398 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Logitech diNovo Edge Keyboard" -#: ../rules/base.xml.in.h:399 ../rules/evdev.xml.in.h:399 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Logitech diNovo Keyboard" -#: ../rules/base.xml.in.h:400 ../rules/evdev.xml.in.h:400 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:401 ../rules/evdev.xml.in.h:401 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Logitech iTouch Cordless Keyboard (modell Y-RB6)" -#: ../rules/base.xml.in.h:402 ../rules/evdev.xml.in.h:402 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Logitech iTouch Internet Navigator Keyboard SE" -#: ../rules/base.xml.in.h:403 ../rules/evdev.xml.in.h:403 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Logitech iTouch Internet Navigator Keyboard SE (USB)" -#: ../rules/base.xml.in.h:404 ../rules/evdev.xml.in.h:404 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "LÃ¥gsorbiska" -#: ../rules/base.xml.in.h:405 ../rules/evdev.xml.in.h:405 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "LÃ¥gsorbiska (qwertz)" -#: ../rules/base.xml.in.h:406 ../rules/evdev.xml.in.h:406 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:407 ../rules/evdev.xml.in.h:407 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:408 ../rules/evdev.xml.in.h:408 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:409 ../rules/evdev.xml.in.h:409 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:410 ../rules/evdev.xml.in.h:410 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (Intl)" -#: ../rules/base.xml.in.h:411 ../rules/evdev.xml.in.h:411 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Makedonien" -#: ../rules/base.xml.in.h:412 ../rules/evdev.xml.in.h:412 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:413 ../rules/evdev.xml.in.h:413 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh gammal" -#: ../rules/base.xml.in.h:414 ../rules/evdev.xml.in.h:414 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, Sun stumma tangenter" -#: ../rules/base.xml.in.h:415 ../rules/evdev.xml.in.h:415 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:416 ../rules/evdev.xml.in.h:416 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Gör CapsLock till ytterligare en backstegstangent" -#: ../rules/base.xml.in.h:417 ../rules/evdev.xml.in.h:417 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Gör CapsLock till ytterligare en Ctrl-tangent" -#: ../rules/base.xml.in.h:418 ../rules/evdev.xml.in.h:418 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Gör CapsLock till ytterligare en ESC-tangent" -#: ../rules/base.xml.in.h:419 ../rules/evdev.xml.in.h:419 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Gör CapsLock till ytterligare en Hyper-tangent" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Gör CapsLock till ytterligare en NumLock-tangent" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Gör CapsLock till ytterligare en Super-tangent" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:420 ../rules/evdev.xml.in.h:420 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:421 ../rules/evdev.xml.in.h:421 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:422 ../rules/evdev.xml.in.h:422 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Maldiverna" -#: ../rules/base.xml.in.h:423 ../rules/evdev.xml.in.h:423 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Malta" -#: ../rules/base.xml.in.h:424 ../rules/evdev.xml.in.h:424 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Maltesiskt tangentbord med USA-layout" -#: ../rules/base.xml.in.h:425 ../rules/evdev.xml.in.h:425 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:426 ../rules/evdev.xml.in.h:426 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Maori" -#: ../rules/base.xml.in.h:427 ../rules/evdev.xml.in.h:427 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:428 ../rules/evdev.xml.in.h:428 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Memorex MX2500 EZ-Access-tangentbord" -#: ../rules/base.xml.in.h:429 ../rules/evdev.xml.in.h:429 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:430 ../rules/evdev.xml.in.h:430 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Meny" -#: ../rules/base.xml.in.h:431 ../rules/evdev.xml.in.h:431 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta är mappad till vänster Win-tangent" -#: ../rules/base.xml.in.h:432 ../rules/evdev.xml.in.h:432 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta är mappad till Win-tangenterna" -#: ../rules/base.xml.in.h:433 ../rules/evdev.xml.in.h:433 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:434 ../rules/evdev.xml.in.h:434 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Microsoft Internet Keyboard" -#: ../rules/base.xml.in.h:435 ../rules/evdev.xml.in.h:435 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Microsoft Internet Keyboard Pro, svensk" -#: ../rules/base.xml.in.h:436 ../rules/evdev.xml.in.h:436 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:437 ../rules/evdev.xml.in.h:437 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:438 ../rules/evdev.xml.in.h:438 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:439 ../rules/evdev.xml.in.h:439 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:440 ../rules/evdev.xml.in.h:440 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:441 ../rules/evdev.xml.in.h:441 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:442 ../rules/evdev.xml.in.h:442 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Microsoft Office-tangentbord" -#: ../rules/base.xml.in.h:443 ../rules/evdev.xml.in.h:443 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:444 ../rules/evdev.xml.in.h:444 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Diverse kompatibilitetsalternativ" -#: ../rules/base.xml.in.h:445 ../rules/evdev.xml.in.h:445 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:446 ../rules/evdev.xml.in.h:446 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:447 ../rules/evdev.xml.in.h:447 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:448 ../rules/evdev.xml.in.h:448 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:449 ../rules/evdev.xml.in.h:449 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mongoliet" -#: ../rules/base.xml.in.h:450 ../rules/evdev.xml.in.h:450 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Montenegro" -#: ../rules/base.xml.in.h:451 ../rules/evdev.xml.in.h:451 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Marocko" -#: ../rules/base.xml.in.h:452 ../rules/evdev.xml.in.h:452 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "FlersprÃ¥kig" -#: ../rules/base.xml.in.h:453 ../rules/evdev.xml.in.h:453 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "FlersprÃ¥kig, första delen" -#: ../rules/base.xml.in.h:454 ../rules/evdev.xml.in.h:454 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "FlersprÃ¥kig, andra delen" -#: ../rules/base.xml.in.h:455 ../rules/evdev.xml.in.h:455 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Myanmar" -#: ../rules/base.xml.in.h:456 ../rules/evdev.xml.in.h:456 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Backsteg i NICOLA-F-stil" -#: ../rules/base.xml.in.h:457 ../rules/evdev.xml.in.h:457 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:458 ../rules/evdev.xml.in.h:458 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:459 ../rules/evdev.xml.in.h:459 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo för Esperanto" -#: ../rules/base.xml.in.h:460 ../rules/evdev.xml.in.h:460 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo för amerikanska tangentbord" -#: ../rules/base.xml.in.h:461 ../rules/evdev.xml.in.h:461 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:462 ../rules/evdev.xml.in.h:462 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:463 ../rules/evdev.xml.in.h:463 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Nepal" -#: ../rules/base.xml.in.h:464 ../rules/evdev.xml.in.h:464 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Nederländerna" -#: ../rules/base.xml.in.h:465 ../rules/evdev.xml.in.h:465 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Ny fonetisk" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:466 ../rules/evdev.xml.in.h:466 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Nigeria" -#: ../rules/base.xml.in.h:467 ../rules/evdev.xml.in.h:467 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:468 ../rules/evdev.xml.in.h:468 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Icke-brytande blankstegstecken pÃ¥ fjärde nivÃ¥n" -#: ../rules/base.xml.in.h:469 ../rules/evdev.xml.in.h:469 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Icke-brytande blankstegstecken pÃ¥ fjärde nivÃ¥n, tunt icke-brytande blankstegstecken pÃ¥ sjätte nivÃ¥n" -#: ../rules/base.xml.in.h:470 ../rules/evdev.xml.in.h:470 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Icke-brytande blankstegstecken pÃ¥ fjärde nivÃ¥n, tunt icke-brytande blankstegstecken pÃ¥ sjätte nivÃ¥n (via Ctrl+Skift)" -#: ../rules/base.xml.in.h:471 ../rules/evdev.xml.in.h:471 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Icke-brytande blankstegstecken pÃ¥ andra nivÃ¥n" -#: ../rules/base.xml.in.h:472 ../rules/evdev.xml.in.h:472 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Icke-brytande blankstegstecken pÃ¥ tredje nivÃ¥n" -#: ../rules/base.xml.in.h:473 ../rules/evdev.xml.in.h:473 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Icke-brytande blankstegstecken pÃ¥ tredje nivÃ¥n, ingenting pÃ¥ fjärde nivÃ¥n" -#: ../rules/base.xml.in.h:474 ../rules/evdev.xml.in.h:474 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Icke-brytande blankstegstecken pÃ¥ tredje nivÃ¥n, tunt icke-brytande blankstegstecken pÃ¥ fjärde nivÃ¥n" -#: ../rules/base.xml.in.h:475 ../rules/evdev.xml.in.h:475 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:476 ../rules/evdev.xml.in.h:476 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Nordsamisk" -#: ../rules/base.xml.in.h:477 ../rules/evdev.xml.in.h:477 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Nordsamisk, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:478 ../rules/evdev.xml.in.h:478 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:479 ../rules/evdev.xml.in.h:479 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Norge" -#: ../rules/base.xml.in.h:480 ../rules/evdev.xml.in.h:480 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" # KONTROLLERA DENNA -#: ../rules/base.xml.in.h:481 ../rules/evdev.xml.in.h:481 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Beteende för Delete-tangent pÃ¥ numeriskt tangentbord" -#: ../rules/base.xml.in.h:482 ../rules/evdev.xml.in.h:482 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "Tangenter pÃ¥ det numeriska tangentbordet fungerar som pÃ¥ Mac" -#: ../rules/base.xml.in.h:483 ../rules/evdev.xml.in.h:483 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Layoutval för numeriskt tangentbord" -#: ../rules/base.xml.in.h:484 ../rules/evdev.xml.in.h:484 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:485 ../rules/evdev.xml.in.h:485 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:486 ../rules/evdev.xml.in.h:486 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:487 ../rules/evdev.xml.in.h:487 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pashto" -#: ../rules/base.xml.in.h:488 ../rules/evdev.xml.in.h:488 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Södra Uzbekistan" -#: ../rules/base.xml.in.h:489 ../rules/evdev.xml.in.h:489 +#: ../rules/base.xml.in.h:507 +msgid "Occitan" +msgstr "Occitan" + +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Ogham" -#: ../rules/base.xml.in.h:490 ../rules/evdev.xml.in.h:490 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogham IS434" -#: ../rules/base.xml.in.h:491 ../rules/evdev.xml.in.h:491 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Oriya" -#: ../rules/base.xml.in.h:492 ../rules/evdev.xml.in.h:492 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Ortek MCK-800 MM/Internet-tangentbord" -#: ../rules/base.xml.in.h:493 ../rules/evdev.xml.in.h:493 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "Ossetisk" -#: ../rules/base.xml.in.h:494 ../rules/evdev.xml.in.h:494 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "Ossetisk, Win-tangenter" -#: ../rules/base.xml.in.h:495 ../rules/evdev.xml.in.h:495 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "Ossetisk, äldre" -#: ../rules/base.xml.in.h:496 ../rules/evdev.xml.in.h:496 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "PC-98xx-serien" -#: ../rules/base.xml.in.h:497 ../rules/evdev.xml.in.h:497 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:498 ../rules/evdev.xml.in.h:498 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pakistan" -#: ../rules/base.xml.in.h:499 ../rules/evdev.xml.in.h:499 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pashto" -#: ../rules/base.xml.in.h:500 ../rules/evdev.xml.in.h:500 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pattachote" -#: ../rules/base.xml.in.h:501 ../rules/evdev.xml.in.h:501 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Persiska, med persiskt numeriskt tangentbord" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Fonetisk" -#: ../rules/base.xml.in.h:502 ../rules/evdev.xml.in.h:502 +#: ../rules/base.xml.in.h:522 +msgid "Phonetic Winkeys" +msgstr "Fonetisk, Windows-tangenter" + +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:503 ../rules/evdev.xml.in.h:503 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Polen" -#: ../rules/base.xml.in.h:504 ../rules/evdev.xml.in.h:504 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Polytonic" -#: ../rules/base.xml.in.h:505 ../rules/evdev.xml.in.h:505 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Portugal" -#: ../rules/base.xml.in.h:506 ../rules/evdev.xml.in.h:506 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:507 ../rules/evdev.xml.in.h:507 -msgid "Pro Keypad" -msgstr "Pro Keypad" - -#: ../rules/base.xml.in.h:508 ../rules/evdev.xml.in.h:508 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:509 ../rules/evdev.xml.in.h:509 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Dvorak för programmerare" -#: ../rules/base.xml.in.h:510 ../rules/evdev.xml.in.h:510 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:511 ../rules/evdev.xml.in.h:511 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:512 ../rules/evdev.xml.in.h:512 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:513 ../rules/evdev.xml.in.h:513 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Höger Alt" -#: ../rules/base.xml.in.h:514 ../rules/evdev.xml.in.h:514 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Höger Alt-tangent (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:515 ../rules/evdev.xml.in.h:515 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "Höger Alt-tangent väljer aldrig tredje nivÃ¥n" -#: ../rules/base.xml.in.h:516 ../rules/evdev.xml.in.h:516 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Höger Alt-tangent, Skift+Höger Alt-tangent är Multi_Key" -#: ../rules/base.xml.in.h:517 ../rules/evdev.xml.in.h:517 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Höger Ctrl" -#: ../rules/base.xml.in.h:518 ../rules/evdev.xml.in.h:518 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Höger Ctrl-tangent (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:519 ../rules/evdev.xml.in.h:519 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Höger Ctrl-tangent fungerar som höger Alt" -#: ../rules/base.xml.in.h:520 ../rules/evdev.xml.in.h:520 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Höger skift" -#: ../rules/base.xml.in.h:521 ../rules/evdev.xml.in.h:521 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Höger Win-tangent" -#: ../rules/base.xml.in.h:522 ../rules/evdev.xml.in.h:522 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Höger Win-tangent (dÃ¥ den trycks ned)" -#: ../rules/base.xml.in.h:523 ../rules/evdev.xml.in.h:523 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Högerhänt" -#: ../rules/base.xml.in.h:524 ../rules/evdev.xml.in.h:524 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Högerhänt Dvorak" -#: ../rules/base.xml.in.h:525 ../rules/evdev.xml.in.h:525 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rumänien" -#: ../rules/base.xml.in.h:526 ../rules/evdev.xml.in.h:526 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Rumänskt tangentbord med tyska bokstäver" -#: ../rules/base.xml.in.h:527 ../rules/evdev.xml.in.h:527 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Rumänskt tangentbord med tyska bokstäver, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:528 ../rules/evdev.xml.in.h:528 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:529 ../rules/evdev.xml.in.h:529 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Rus" -#: ../rules/base.xml.in.h:530 ../rules/evdev.xml.in.h:530 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Ryssland" -#: ../rules/base.xml.in.h:531 ../rules/evdev.xml.in.h:531 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Rysk" -#: ../rules/base.xml.in.h:532 ../rules/evdev.xml.in.h:532 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Rysk fonetiskt" -#: ../rules/base.xml.in.h:533 ../rules/evdev.xml.in.h:533 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Rysk fonetisk dvorak" -#: ../rules/base.xml.in.h:534 ../rules/evdev.xml.in.h:534 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Rysk fonetiskt, eliminera stumma tangenter" -#: ../rules/base.xml.in.h:535 ../rules/evdev.xml.in.h:535 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Ryska med kazakiska" -#: ../rules/base.xml.in.h:536 ../rules/evdev.xml.in.h:536 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "SILVERCREST Multimedia Wireless Keyboard" -#: ../rules/base.xml.in.h:537 ../rules/evdev.xml.in.h:537 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:538 ../rules/evdev.xml.in.h:538 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:539 ../rules/evdev.xml.in.h:539 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:540 ../rules/evdev.xml.in.h:540 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:541 ../rules/evdev.xml.in.h:541 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:542 ../rules/evdev.xml.in.h:542 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:543 ../rules/evdev.xml.in.h:543 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:544 ../rules/evdev.xml.in.h:544 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:545 ../rules/evdev.xml.in.h:545 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:546 ../rules/evdev.xml.in.h:546 +#: ../rules/base.xml.in.h:565 +msgid "Scroll Lock" +msgstr "Scroll Lock" + +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:547 ../rules/evdev.xml.in.h:547 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:548 ../rules/evdev.xml.in.h:548 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Semikolon pÃ¥ tredje nivÃ¥" -#: ../rules/base.xml.in.h:549 ../rules/evdev.xml.in.h:549 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Serbien" -#: ../rules/base.xml.in.h:550 ../rules/evdev.xml.in.h:550 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Skift avbryter CapsLock" -#: ../rules/base.xml.in.h:551 ../rules/evdev.xml.in.h:551 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Skift avbryter inte NumLock, väljer tredje nivÃ¥n istället" -#: ../rules/base.xml.in.h:552 ../rules/evdev.xml.in.h:552 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Skift med tangenterna pÃ¥ numeriska tangentbordet fungerar som i MS Windows" -#: ../rules/base.xml.in.h:553 ../rules/evdev.xml.in.h:553 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Skift+CapsLock" -#: ../rules/base.xml.in.h:554 ../rules/evdev.xml.in.h:554 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "Enkel" -#: ../rules/base.xml.in.h:555 ../rules/evdev.xml.in.h:555 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Slovakien" -#: ../rules/base.xml.in.h:556 ../rules/evdev.xml.in.h:556 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Slovenien" -#: ../rules/base.xml.in.h:557 ../rules/evdev.xml.in.h:557 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Sydafrika" -#: ../rules/base.xml.in.h:558 ../rules/evdev.xml.in.h:558 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Södra Uzbekistan" -#: ../rules/base.xml.in.h:559 ../rules/evdev.xml.in.h:559 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Spanien" -#: ../rules/base.xml.in.h:560 ../rules/evdev.xml.in.h:560 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Specialtangenter (Ctrl+Alt+<tangent>) hanteras i en server" -#: ../rules/base.xml.in.h:561 ../rules/evdev.xml.in.h:561 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:562 ../rules/evdev.xml.in.h:562 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "Sri Lanka" -#: ../rules/base.xml.in.h:563 ../rules/evdev.xml.in.h:563 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Standard" -#: ../rules/base.xml.in.h:564 ../rules/evdev.xml.in.h:564 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Standard (Cedilj)" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:566 ../rules/evdev.xml.in.h:566 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "Standard RSTU" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:568 ../rules/evdev.xml.in.h:568 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "Standard RSTU pÃ¥ rysk layout" -#: ../rules/base.xml.in.h:569 ../rules/evdev.xml.in.h:569 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun Type 5/6" -#: ../rules/base.xml.in.h:570 ../rules/evdev.xml.in.h:570 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "Sun stumma tangenter" -#: ../rules/base.xml.in.h:571 ../rules/evdev.xml.in.h:571 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Super Power Multimedia Keyboard" -#: ../rules/base.xml.in.h:572 ../rules/evdev.xml.in.h:572 -msgid "Super is mapped to Win keys" -msgstr "Super-tangenten är mappad till Win-tangenterna" - -#: ../rules/base.xml.in.h:573 ../rules/evdev.xml.in.h:573 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:574 ../rules/evdev.xml.in.h:574 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:575 ../rules/evdev.xml.in.h:575 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:576 ../rules/evdev.xml.in.h:576 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Byt Ctrl och CapsLock" -#: ../rules/base.xml.in.h:577 ../rules/evdev.xml.in.h:577 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Byt ESC och CapsLock" -#: ../rules/base.xml.in.h:578 ../rules/evdev.xml.in.h:578 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:579 ../rules/evdev.xml.in.h:579 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Sverige" -#: ../rules/base.xml.in.h:580 ../rules/evdev.xml.in.h:580 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Schweiz" -#: ../rules/base.xml.in.h:581 ../rules/evdev.xml.in.h:581 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:582 ../rules/evdev.xml.in.h:582 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:583 ../rules/evdev.xml.in.h:583 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Syrien" -#: ../rules/base.xml.in.h:584 ../rules/evdev.xml.in.h:584 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Syrisk" -#: ../rules/base.xml.in.h:585 ../rules/evdev.xml.in.h:585 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Syrisk fonetisk" -#: ../rules/base.xml.in.h:586 ../rules/evdev.xml.in.h:586 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:587 ../rules/evdev.xml.in.h:587 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Tajikistan" -#: ../rules/base.xml.in.h:588 ../rules/evdev.xml.in.h:588 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Tamilsk" -#: ../rules/base.xml.in.h:589 ../rules/evdev.xml.in.h:589 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Tamil TAB Typewriter" -#: ../rules/base.xml.in.h:590 ../rules/evdev.xml.in.h:590 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Tamil TSCII Typewriter" -#: ../rules/base.xml.in.h:591 ../rules/evdev.xml.in.h:591 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Tamilisk Unicode" -#: ../rules/base.xml.in.h:592 ../rules/evdev.xml.in.h:592 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:593 ../rules/evdev.xml.in.h:593 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Tatar" -#: ../rules/base.xml.in.h:594 ../rules/evdev.xml.in.h:594 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Telugo" -#: ../rules/base.xml.in.h:595 ../rules/evdev.xml.in.h:595 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:596 ../rules/evdev.xml.in.h:596 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thailand" -#: ../rules/base.xml.in.h:597 ../rules/evdev.xml.in.h:597 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tibetisk" -#: ../rules/base.xml.in.h:598 ../rules/evdev.xml.in.h:598 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tibetisk (med ASCII-taltecken)" -#: ../rules/base.xml.in.h:599 ../rules/evdev.xml.in.h:599 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Tifinagh" -#: ../rules/base.xml.in.h:600 ../rules/evdev.xml.in.h:600 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Tifinagh alternativ" -#: ../rules/base.xml.in.h:601 ../rules/evdev.xml.in.h:601 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Tifinagh alternativ fonetisk" -#: ../rules/base.xml.in.h:602 ../rules/evdev.xml.in.h:602 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Tifinagh utökad" -#: ../rules/base.xml.in.h:603 ../rules/evdev.xml.in.h:603 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Tifinagh utökad fonetisk" -#: ../rules/base.xml.in.h:604 ../rules/evdev.xml.in.h:604 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Tifinagh fonetisk" -#: ../rules/base.xml.in.h:605 ../rules/evdev.xml.in.h:605 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Tilde (~) variant" -#: ../rules/base.xml.in.h:606 ../rules/evdev.xml.in.h:606 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:607 ../rules/evdev.xml.in.h:607 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Till motsvarande tangent pÃ¥ ett Dvorak-tangentbord." -#: ../rules/base.xml.in.h:608 ../rules/evdev.xml.in.h:608 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Till motsvarande tangent pÃ¥ ett Qwerty-tangentbord." -#: ../rules/base.xml.in.h:609 ../rules/evdev.xml.in.h:609 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:610 ../rules/evdev.xml.in.h:610 +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" +msgstr "Traditionell fonetisk" + +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Trust Direct Access-tangentbord" -#: ../rules/base.xml.in.h:611 ../rules/evdev.xml.in.h:611 +#: ../rules/base.xml.in.h:631 +msgid "Trust Slimline" +msgstr "Trust Slimline" + +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Trust Wireless Keyboard Classic" -#: ../rules/base.xml.in.h:612 ../rules/evdev.xml.in.h:612 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:613 ../rules/evdev.xml.in.h:613 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Turkiet" -#: ../rules/base.xml.in.h:614 ../rules/evdev.xml.in.h:614 +#: ../rules/base.xml.in.h:635 +msgid "Turkmenistan" +msgstr "Turkmenistan" + +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Skrivmaskin" -#: ../rules/base.xml.in.h:615 ../rules/evdev.xml.in.h:615 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "UCW-layout (endast bokstäver med accenter)" -#: ../rules/base.xml.in.h:616 ../rules/evdev.xml.in.h:616 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "USA-tangentbord med bosniska digrafer" -#: ../rules/base.xml.in.h:617 ../rules/evdev.xml.in.h:617 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "USA-tangentbord med bosniska bokstäver" -#: ../rules/base.xml.in.h:618 ../rules/evdev.xml.in.h:618 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "USA-tangentbord med kroatiska digrafer" -#: ../rules/base.xml.in.h:619 ../rules/evdev.xml.in.h:619 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "USA-tangentbord med kroatiska bokstäver" -#: ../rules/base.xml.in.h:620 ../rules/evdev.xml.in.h:620 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "USA-tangentbord med estniska bokstäver" -#: ../rules/base.xml.in.h:621 ../rules/evdev.xml.in.h:621 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "USA-tangentbord med italienska bokstäver" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "USA-tangentbord med litauiska bokstäver" -#: ../rules/base.xml.in.h:622 ../rules/evdev.xml.in.h:622 -msgid "US keyboard with Slovenian digraphs" -msgstr "USA-tangentbord med slovenska digrafer" - -#: ../rules/base.xml.in.h:623 ../rules/evdev.xml.in.h:623 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "USA-tangentbord med slovenska bokstäver" -#: ../rules/base.xml.in.h:624 ../rules/evdev.xml.in.h:624 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "USA" -#: ../rules/base.xml.in.h:625 ../rules/evdev.xml.in.h:625 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "Udmurt" -#: ../rules/base.xml.in.h:626 ../rules/evdev.xml.in.h:626 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:627 ../rules/evdev.xml.in.h:627 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "Ukraina" -#: ../rules/base.xml.in.h:628 ../rules/evdev.xml.in.h:628 -msgid "Unicode" -msgstr "Unicode" - -#: ../rules/base.xml.in.h:629 ../rules/evdev.xml.in.h:629 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Unicode-tillägg (pilar och matematikoperatorer)" -#: ../rules/base.xml.in.h:630 ../rules/evdev.xml.in.h:630 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Unicode-tillägg (pilar och matematikoperatorer). Matematikoperatorer pÃ¥ standardnivÃ¥" -#: ../rules/base.xml.in.h:631 ../rules/evdev.xml.in.h:631 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "UnicodeExpert" -#: ../rules/base.xml.in.h:632 ../rules/evdev.xml.in.h:632 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Storbritannien" -#: ../rules/base.xml.in.h:633 ../rules/evdev.xml.in.h:633 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:634 ../rules/evdev.xml.in.h:634 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, alternativ fonetisk" -#: ../rules/base.xml.in.h:635 ../rules/evdev.xml.in.h:635 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, fonetisk" -#: ../rules/base.xml.in.h:636 ../rules/evdev.xml.in.h:636 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, Win-tangenter" -#: ../rules/base.xml.in.h:637 ../rules/evdev.xml.in.h:637 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Använd bosniska digrafer" -#: ../rules/base.xml.in.h:638 ../rules/evdev.xml.in.h:638 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Använd kroatiska digrafer" -#: ../rules/base.xml.in.h:639 ../rules/evdev.xml.in.h:639 -msgid "Use Slovenian digraphs" -msgstr "Använd slovenska digrafer" - -#: ../rules/base.xml.in.h:640 ../rules/evdev.xml.in.h:640 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Använd gÃ¥sögon för citattecken" -#: ../rules/base.xml.in.h:641 ../rules/evdev.xml.in.h:641 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Använd tangentbordslampa för att visa alternativ layout" -#: ../rules/base.xml.in.h:642 ../rules/evdev.xml.in.h:642 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Använder blankstegstangenten för att mata in icke-brytande blankstegstecken" -#: ../rules/base.xml.in.h:643 ../rules/evdev.xml.in.h:643 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Vanligt blanksteg pÃ¥ alla nivÃ¥er" -#: ../rules/base.xml.in.h:644 ../rules/evdev.xml.in.h:644 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:645 ../rules/evdev.xml.in.h:645 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uzbekistan" -#: ../rules/base.xml.in.h:646 ../rules/evdev.xml.in.h:646 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Vietnam" -#: ../rules/base.xml.in.h:647 ../rules/evdev.xml.in.h:647 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "ViewSonic KU-306 internettangentbord" -#: ../rules/base.xml.in.h:648 ../rules/evdev.xml.in.h:648 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:649 ../rules/evdev.xml.in.h:649 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Wang 724 numeriskt tangentbord med unicode-tillägg (pilar och matematikoperatorer)" -#: ../rules/base.xml.in.h:650 ../rules/evdev.xml.in.h:650 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Wang 724 numeriskt tangentbord med unicode-tillägg (pilar och matematikoperatorer). Matematikoperatorer pÃ¥ standardnivÃ¥" -#: ../rules/base.xml.in.h:651 ../rules/evdev.xml.in.h:651 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang modell 724 azerty" -#: ../rules/base.xml.in.h:652 ../rules/evdev.xml.in.h:652 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Västlig" -#: ../rules/base.xml.in.h:653 ../rules/evdev.xml.in.h:653 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook Model XP5" -#: ../rules/base.xml.in.h:654 ../rules/evdev.xml.in.h:654 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "Win-tangenter" -#: ../rules/base.xml.in.h:655 ../rules/evdev.xml.in.h:655 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Med <\\|>-tangent" -#: ../rules/base.xml.in.h:656 ../rules/evdev.xml.in.h:656 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Med eurotecknet till tangenten 5" -#: ../rules/base.xml.in.h:657 ../rules/evdev.xml.in.h:657 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Med gÃ¥sögon" -#: ../rules/base.xml.in.h:658 ../rules/evdev.xml.in.h:658 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Yahoo! Internettangentbord" -#: ../rules/base.xml.in.h:659 ../rules/evdev.xml.in.h:659 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Jakutiska" -#: ../rules/base.xml.in.h:660 ../rules/evdev.xml.in.h:660 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoruba" -#: ../rules/base.xml.in.h:661 ../rules/evdev.xml.in.h:661 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Z och ZHE utbytta" -#: ../rules/base.xml.in.h:662 ../rules/evdev.xml.in.h:662 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:663 ../rules/evdev.xml.in.h:663 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:664 ../rules/evdev.xml.in.h:664 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/siffror" -#: ../rules/base.xml.in.h:665 ../rules/evdev.xml.in.h:665 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "siffror" -#: ../rules/base.xml.in.h:666 ../rules/evdev.xml.in.h:666 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "flyttat semikolon och citattecken (förÃ¥ldrat)" -#: ../rules/base.xml.in.h:667 ../rules/evdev.xml.in.h:667 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:668 ../rules/evdev.xml.in.h:668 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:669 ../rules/evdev.xml.in.h:669 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, utökat omvänt snedstreck" -#: ../rules/base.xml.in.h:670 ../rules/evdev.xml.in.h:670 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/siffror" -#: ../rules/base.xml.in.h:671 ../rules/evdev.xml.in.h:671 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Atsina" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Kombinerade accenter istället för stumma tangenter" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Internationell (AltGr med kombinerad Unicode)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Internationell (AltGr med kombinerad Unicode, alternativ)" + +#~ msgid "Keypad" +#~ msgstr "Knappsats" + +#~ msgid "Pro" +#~ msgstr "Pro" + +#~ msgid "Pro Keypad" +#~ msgstr "Pro Keypad" + +#~ msgid "Standard Phonetic" +#~ msgstr "Fonetisk, standard" + +#~ msgid "Brazilian ABNT2" +#~ msgstr "Brasiliansk ABNT2" + +#~ msgid "Japanese 106-key" +#~ msgstr "Japansk 106-tangenters" + +#~ msgid "Kir" +#~ msgstr "Kir" + +#~ msgid "Korean 106-key" +#~ msgstr "Koreansk 106-tangenters" + +#~ msgid "Super is mapped to Win keys" +#~ msgstr "Super-tangenten är mappad till Win-tangenterna" + +#~ msgid "US keyboard with Slovenian digraphs" +#~ msgstr "USA-tangentbord med slovenska digrafer" + +#~ msgid "Unicode" +#~ msgstr "Unicode" + +#~ msgid "Use Slovenian digraphs" +#~ msgstr "Använd slovenska digrafer" + #~ msgid "Add the EuroSign to the 2 key." #~ msgstr "Lägg till eurotecknet till tangenten 2." @@ -2706,9 +2846,6 @@ msgstr "qwertz" #~ msgid "Alt+Shift change layout." #~ msgstr "Alt+Shift byter layout." -#~ msgid "Baltic+" -#~ msgstr "Baltisk+" - #~ msgid "Both Alt keys together change layout." #~ msgstr "BÃ¥da Alt-tangenterna tillsammans byter layout." @@ -2718,9 +2855,6 @@ msgstr "qwertz" #~ msgid "Both Shift keys together change layout." #~ msgstr "BÃ¥da Skift-tangenterna tillsammans byter layout." -#~ msgid "Caps Lock is Compose." -#~ msgstr "Caps Lock är Compose." - #~ msgid "CapsLock LED shows alternative layout." #~ msgstr "CapsLock-lampan visar alternativ layout." @@ -3048,9 +3182,6 @@ msgstr "qwertz" #~ msgid "Turkish Alt-Q Layout" #~ msgstr "Turkisk Alt-Q-layout" -#~ msgid "U.S. English" -#~ msgstr "Engelskamerikansk" - #~ msgid "U.S. English w/ ISO9995-3" #~ msgstr "Engelskamerikansk med ISO9995-3" @@ -3114,9 +3245,6 @@ msgstr "qwertz" #~ msgid "Tamil INSCRIPT" #~ msgstr "Tamil INSCRIPT" -#~ msgid "US keyboard with Maltian letters" -#~ msgstr "USA-tangentbord med maltesiska bokstäver" - #~ msgid "si1452" #~ msgstr "si1452" @@ -3162,9 +3290,6 @@ msgstr "qwertz" #~ msgid "Hin" #~ msgstr "Hin" -#~ msgid "Hindi" -#~ msgstr "Hindisk" - #~ msgid "INSCRIPT layout" #~ msgstr "INSCRIPT-layout" diff --git a/xorg-server/xkbdata.src/po/vi.po b/xorg-server/xkbdata.src/po/vi.po index 69d7fb7b5..d69f2498d 100644 --- a/xorg-server/xkbdata.src/po/vi.po +++ b/xorg-server/xkbdata.src/po/vi.po @@ -6,10 +6,10 @@ # msgid "" msgstr "" -"Project-Id-Version: xkeyboard-config 1.6pre1\n" +"Project-Id-Version: xkeyboard-config 1.6.99\n" "Report-Msgid-Bugs-To: svu@users.sourceforge.net\n" -"POT-Creation-Date: 2009-05-12 23:49+0100\n" -"PO-Revision-Date: 2009-05-13 20:36+0930\n" +"POT-Creation-Date: 2009-09-15 23:31+0100\n" +"PO-Revision-Date: 2009-09-19 14:33+0930\n" "Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n" "Language-Team: Vietnamese <vi-VN@googlegroups.com>\n" "MIME-Version: 1.0\n" @@ -373,2382 +373,2426 @@ msgid "Bangladesh" msgstr "Băng-la-Ä‘exợ" #: ../rules/base.xml.in.h:89 +msgid "Bashkirian" +msgstr "Ba-s-khi-ri" + +#: ../rules/base.xml.in.h:90 msgid "Bel" msgstr "Bel" -#: ../rules/base.xml.in.h:90 +#: ../rules/base.xml.in.h:91 msgid "Belarus" msgstr "Bê-la-rút" -#: ../rules/base.xml.in.h:91 +#: ../rules/base.xml.in.h:92 msgid "Belgium" msgstr "Bỉ" -#: ../rules/base.xml.in.h:92 +#: ../rules/base.xml.in.h:93 msgid "BenQ X-Touch" msgstr "BenQ X-Touch" -#: ../rules/base.xml.in.h:93 +#: ../rules/base.xml.in.h:94 msgid "BenQ X-Touch 730" msgstr "BenQ X-Touch 730" -#: ../rules/base.xml.in.h:94 +#: ../rules/base.xml.in.h:95 msgid "BenQ X-Touch 800" msgstr "BenQ X-Touch 800" -#: ../rules/base.xml.in.h:95 +#: ../rules/base.xml.in.h:96 msgid "Bengali" msgstr "Ben-ga-li" -#: ../rules/base.xml.in.h:96 +#: ../rules/base.xml.in.h:97 msgid "Bengali Probhat" msgstr "Ben-ga-li Probhat" -#: ../rules/base.xml.in.h:97 +#: ../rules/base.xml.in.h:98 msgid "Bepo, ergonomic, Dvorak way" msgstr "Bepo, tối ưu nhân tố, cách Dvorak" -#: ../rules/base.xml.in.h:98 +#: ../rules/base.xml.in.h:99 msgid "Bepo, ergonomic, Dvorak way, latin-9 only" msgstr "Bepo, tối ưu nhân tố, cách Dvorak, chỉ Latin-9" -#: ../rules/base.xml.in.h:99 +#: ../rules/base.xml.in.h:100 msgid "Bgr" msgstr "Bgr" -#: ../rules/base.xml.in.h:100 +#: ../rules/base.xml.in.h:101 msgid "Bhu" msgstr "Bhu" -#: ../rules/base.xml.in.h:101 +#: ../rules/base.xml.in.h:102 msgid "Bhutan" msgstr "Bhu-tan" -#: ../rules/base.xml.in.h:102 +#: ../rules/base.xml.in.h:103 msgid "Biblical Hebrew (Tiro)" msgstr "Do Thái kinh thánh (Tiro)" -#: ../rules/base.xml.in.h:103 +#: ../rules/base.xml.in.h:104 msgid "Bih" msgstr "Bih" -#: ../rules/base.xml.in.h:104 +#: ../rules/base.xml.in.h:105 msgid "Blr" msgstr "Blr" -#: ../rules/base.xml.in.h:105 +#: ../rules/base.xml.in.h:106 msgid "Bosnia and Herzegovina" msgstr "Bô-xni-a và Héc-xê-gô-vi-na" -#: ../rules/base.xml.in.h:106 +#: ../rules/base.xml.in.h:107 msgid "Both Alt keys together" msgstr "Cả hai phÃm Alt vá»›i nhau" -#: ../rules/base.xml.in.h:107 +#: ../rules/base.xml.in.h:108 msgid "Both Ctrl keys together" msgstr "Cả hai phÃm Ctrl vá»›i nhau" -#: ../rules/base.xml.in.h:108 +#: ../rules/base.xml.in.h:109 msgid "Both Shift keys together" msgstr "Cả hai phÃm Shift vá»›i nhau" -#: ../rules/base.xml.in.h:109 +#: ../rules/base.xml.in.h:110 msgid "Bra" msgstr "Bra" -#: ../rules/base.xml.in.h:110 +#: ../rules/base.xml.in.h:111 msgid "Braille" msgstr "Chữ nổi" -#: ../rules/base.xml.in.h:111 +#: ../rules/base.xml.in.h:112 msgid "Brazil" msgstr "Bra-xin" -#: ../rules/base.xml.in.h:112 +#: ../rules/base.xml.in.h:113 msgid "Breton" msgstr "Bợ-re-ton" -#: ../rules/base.xml.in.h:113 +#: ../rules/base.xml.in.h:114 msgid "Brl" msgstr "Brl" -#: ../rules/base.xml.in.h:114 +#: ../rules/base.xml.in.h:115 msgid "Brother Internet Keyboard" msgstr "Bà n phÃm Internet Brother" -#: ../rules/base.xml.in.h:115 +#: ../rules/base.xml.in.h:116 msgid "Buckwalter" msgstr "Buckwalter" -#: ../rules/base.xml.in.h:116 +#: ../rules/base.xml.in.h:117 msgid "Bulgaria" msgstr "Bun-ga-ri" -#: ../rules/base.xml.in.h:117 +#: ../rules/base.xml.in.h:118 msgid "CRULP" msgstr "CRULP" -#: ../rules/base.xml.in.h:118 +#: ../rules/base.xml.in.h:119 msgid "Cambodia" msgstr "Căm Bốt" -#: ../rules/base.xml.in.h:119 +#: ../rules/base.xml.in.h:120 msgid "Can" msgstr "Can" -#: ../rules/base.xml.in.h:120 +#: ../rules/base.xml.in.h:121 msgid "Canada" msgstr "Ca-na-da" -#: ../rules/base.xml.in.h:121 +#: ../rules/base.xml.in.h:122 msgid "Caps Lock" msgstr "Caps Lock" -#: ../rules/base.xml.in.h:122 +#: ../rules/base.xml.in.h:123 msgid "CapsLock" msgstr "CapsLock" -#: ../rules/base.xml.in.h:123 +#: ../rules/base.xml.in.h:124 msgid "CapsLock (to first layout), Shift+CapsLock (to last layout)" msgstr "CapsLock (tá»›i bố trà đầu tiên), Shift+CapsLock (tá»›i bố trà cuối cùng)" -#: ../rules/base.xml.in.h:124 +#: ../rules/base.xml.in.h:125 msgid "CapsLock (while pressed), Alt+CapsLock does the original capslock action" msgstr "CapsLock (trong khi bấm), Alt+CapsLock thì là m việc gốc khoá chữ hoa" -#: ../rules/base.xml.in.h:125 +#: ../rules/base.xml.in.h:126 msgid "CapsLock acts as Shift with locking. Shift \"pauses\" CapsLock" msgstr "CapsLock hoạt động như Shift mà cÅ©ng khoá. Shift « tạm dừng » CapsLock." -#: ../rules/base.xml.in.h:126 +#: ../rules/base.xml.in.h:127 msgid "CapsLock acts as Shift with locking. Shift doesn't affect CapsLock" msgstr "CapsLock hoạt động như Shift mà cÅ©ng khoá. Shift không có tác động CapsLock." -#: ../rules/base.xml.in.h:127 +#: ../rules/base.xml.in.h:128 +msgid "CapsLock is disabled" +msgstr "CapsLock bị tắt" + +#: ../rules/base.xml.in.h:129 msgid "CapsLock key behavior" msgstr "Äặc Ä‘iểm cá»§a phÃm CapsLock" -#: ../rules/base.xml.in.h:128 +#: ../rules/base.xml.in.h:130 msgid "CapsLock toggles Shift so all keys are affected" msgstr "CapsLock báºt tắt Shift thì má»i phÃm Ä‘á»u bị ảnh hưởng" -#: ../rules/base.xml.in.h:129 +#: ../rules/base.xml.in.h:131 msgid "CapsLock toggles normal capitalization of alphabetic characters" msgstr "CapsLock báºt tắt viết hoa thông thưá»ng cá»§a các ký tá»± chữ cái" -#: ../rules/base.xml.in.h:130 +#: ../rules/base.xml.in.h:132 msgid "CapsLock uses internal capitalization. Shift \"pauses\" CapsLock" msgstr "CapsLock sá» dụng chức năng viết hoa ná»™i bá»™. Shift « tạm dừng » CapsLock." -#: ../rules/base.xml.in.h:131 +#: ../rules/base.xml.in.h:133 msgid "CapsLock uses internal capitalization. Shift doesn't affect CapsLock" msgstr "CapsLock sá» dụng chức năng viết hoa ná»™i bá»™. Shift không có tác động CapsLock." -#: ../rules/base.xml.in.h:132 +#: ../rules/base.xml.in.h:134 msgid "Catalan variant with middle-dot L" msgstr "Biến thể Ca-ta-lan có chữ L chấm giữa" # Tên bố trà bà n phÃm ? -#: ../rules/base.xml.in.h:133 +#: ../rules/base.xml.in.h:135 msgid "Cedilla" msgstr "Cedilla" -#: ../rules/base.xml.in.h:134 +#: ../rules/base.xml.in.h:136 msgid "Che" msgstr "Che" -#: ../rules/base.xml.in.h:135 +#: ../rules/base.xml.in.h:137 msgid "Cherokee" msgstr "Che-rô-khi" -#: ../rules/base.xml.in.h:136 +#: ../rules/base.xml.in.h:138 msgid "Cherry B.UNLIMITED" msgstr "Cherry B.VÔ_HẠN" -#: ../rules/base.xml.in.h:137 +#: ../rules/base.xml.in.h:139 msgid "Cherry Blue Line CyBo@rd" msgstr "Cherry Blue Line CyBo@rd" -#: ../rules/base.xml.in.h:138 +#: ../rules/base.xml.in.h:140 msgid "Cherry Blue Line CyBo@rd (alternate option)" msgstr "Cherry Blue Line CyBo@rd (luân phiên tùy chá»n)" -#: ../rules/base.xml.in.h:139 +#: ../rules/base.xml.in.h:141 msgid "Cherry CyBo@rd USB-Hub" msgstr "Cherry CyBo@rd Cái Nối USB" -#: ../rules/base.xml.in.h:140 +#: ../rules/base.xml.in.h:142 msgid "Cherry CyMotion Expert" msgstr "Cherry CyMotion Expert" -#: ../rules/base.xml.in.h:141 +#: ../rules/base.xml.in.h:143 msgid "Cherry CyMotion Master Linux" msgstr "Cherry CyMotion Master Linux" -#: ../rules/base.xml.in.h:142 +#: ../rules/base.xml.in.h:144 msgid "Cherry CyMotion Master XPress" msgstr "Cherry CyMotion Master XPress" -#: ../rules/base.xml.in.h:143 +#: ../rules/base.xml.in.h:145 msgid "Chicony Internet Keyboard" msgstr "Bà n phÃm Internet Chicony" -#: ../rules/base.xml.in.h:144 +#: ../rules/base.xml.in.h:146 msgid "Chicony KB-9885" msgstr "Chicony KB-9885" -#: ../rules/base.xml.in.h:145 +#: ../rules/base.xml.in.h:147 msgid "Chicony KU-0108" msgstr "Chicony KU-0108" -#: ../rules/base.xml.in.h:146 +#: ../rules/base.xml.in.h:148 msgid "Chicony KU-0420" msgstr "Chicony KU-0420" -#: ../rules/base.xml.in.h:147 +#: ../rules/base.xml.in.h:149 msgid "China" msgstr "Trung Quốc" -#: ../rules/base.xml.in.h:148 +#: ../rules/base.xml.in.h:150 msgid "Chuvash" msgstr "Chu-vasợ" -#: ../rules/base.xml.in.h:149 +#: ../rules/base.xml.in.h:151 msgid "Chuvash Latin" msgstr "Chu-vasợ La-tinh" -#: ../rules/base.xml.in.h:150 +#: ../rules/base.xml.in.h:152 msgid "Classic" msgstr "Kinh Ä‘iển" -#: ../rules/base.xml.in.h:151 +#: ../rules/base.xml.in.h:153 msgid "Classic Dvorak" msgstr "Dvorak kinh Ä‘iển" -#: ../rules/base.xml.in.h:152 +#: ../rules/base.xml.in.h:154 msgid "Classmate PC" msgstr "Classmate PC" -#: ../rules/base.xml.in.h:153 +#: ../rules/base.xml.in.h:155 msgid "CloGaelach" msgstr "CloGaelach" -#: ../rules/base.xml.in.h:154 +#: ../rules/base.xml.in.h:156 msgid "Colemak" msgstr "Colemak" -#: ../rules/base.xml.in.h:155 +#: ../rules/base.xml.in.h:157 msgid "Compaq Easy Access Keyboard" msgstr "Bà n phÃm Truy cáºp Dá»… dà ng cá»§a Compaq" -#: ../rules/base.xml.in.h:156 +#: ../rules/base.xml.in.h:158 msgid "Compaq Internet Keyboard (13 keys)" msgstr "Bà n phÃm Internet Compaq (13 phÃm)" -#: ../rules/base.xml.in.h:157 +#: ../rules/base.xml.in.h:159 msgid "Compaq Internet Keyboard (18 keys)" msgstr "Bà n phÃm Internet Compaq (18 phÃm)" -#: ../rules/base.xml.in.h:158 +#: ../rules/base.xml.in.h:160 msgid "Compaq Internet Keyboard (7 keys)" msgstr "Bà n phÃm Internet Compaq (7 phÃm)" -#: ../rules/base.xml.in.h:159 +#: ../rules/base.xml.in.h:161 msgid "Compaq iPaq Keyboard" msgstr "Bà n phÃm iPaq Compaq" -#: ../rules/base.xml.in.h:160 +#: ../rules/base.xml.in.h:162 msgid "Compose key position" msgstr "Vị trà phÃm Soạn thảo" -#: ../rules/base.xml.in.h:161 +#: ../rules/base.xml.in.h:163 msgid "Congo, Democratic Republic of the" msgstr "Cá»™ng Hoà Dân Chá»§ Công-gô" -#: ../rules/base.xml.in.h:162 +#: ../rules/base.xml.in.h:164 msgid "Control + Alt + Backspace" msgstr "Control + Alt + Backspace" -#: ../rules/base.xml.in.h:163 +#: ../rules/base.xml.in.h:165 msgid "Control is mapped to Alt keys, Alt is mapped to Win keys" msgstr "Control ánh xạ tá»›i các phÃm Alt, Alt ánh xạ tá»›i các phÃm Win" -#: ../rules/base.xml.in.h:164 +#: ../rules/base.xml.in.h:166 msgid "Control is mapped to Win keys (and the usual Ctrl keys)" msgstr "Control ánh xạ tá»›i các phÃm Win (và các phÃm Ctrl thưá»ng dùng)" -#: ../rules/base.xml.in.h:165 +#: ../rules/base.xml.in.h:167 +msgid "Creative Desktop Wireless 7000" +msgstr "Creative Desktop Wireless 7000" + +#: ../rules/base.xml.in.h:168 msgid "Crimean Tatar (Dobruca-1 Q)" msgstr "Ta-tă Cợ-ri-mia (Dobruca-1 Q)" -#: ../rules/base.xml.in.h:166 +#: ../rules/base.xml.in.h:169 msgid "Crimean Tatar (Dobruca-2 Q)" msgstr "Ta-tă Cợ-ri-mia (Dobruca-2 Q)" -#: ../rules/base.xml.in.h:167 +#: ../rules/base.xml.in.h:170 msgid "Crimean Tatar (Turkish Alt-Q)" msgstr "Ta-tă Cợ-ri-mia (Thổ NhÄ© Kỳ Alt-Q)" -#: ../rules/base.xml.in.h:168 +#: ../rules/base.xml.in.h:171 msgid "Crimean Tatar (Turkish F)" msgstr "Ta-tă Cợ-ri-mia (Thổ NhÄ© Kỳ F)" -#: ../rules/base.xml.in.h:169 +#: ../rules/base.xml.in.h:172 msgid "Crimean Tatar (Turkish Q)" msgstr "Ta-tă Cợ-ri-mia (Thổ NhÄ© Kỳ Q)" -#: ../rules/base.xml.in.h:170 +#: ../rules/base.xml.in.h:173 msgid "Croatia" msgstr "Cợ-rô-a-ti-a" -#: ../rules/base.xml.in.h:171 +#: ../rules/base.xml.in.h:174 msgid "Ctrl key position" msgstr "Vị trà phÃm Ctrl" -#: ../rules/base.xml.in.h:172 +#: ../rules/base.xml.in.h:175 msgid "Ctrl+Shift" msgstr "Ctrl+Shift" -#: ../rules/base.xml.in.h:173 +#: ../rules/base.xml.in.h:176 msgid "Cyrillic" msgstr "Ki-rin" -#: ../rules/base.xml.in.h:174 +#: ../rules/base.xml.in.h:177 msgid "Cyrillic with guillemets" msgstr "Ki-rin vá»›i « chim uria »" -#: ../rules/base.xml.in.h:175 +#: ../rules/base.xml.in.h:178 msgid "Cyrillic, Z and ZHE swapped" msgstr "Ki-rin, đổi chá»— Z và ZHE" -#: ../rules/base.xml.in.h:176 +#: ../rules/base.xml.in.h:179 msgid "Cze" msgstr "Cze" -#: ../rules/base.xml.in.h:177 +#: ../rules/base.xml.in.h:180 msgid "Czechia" msgstr "Séc" -#: ../rules/base.xml.in.h:178 +#: ../rules/base.xml.in.h:181 msgid "DOS" msgstr "DOS" -#: ../rules/base.xml.in.h:179 +#: ../rules/base.xml.in.h:182 msgid "DRC" msgstr "DRC" -#: ../rules/base.xml.in.h:180 +#: ../rules/base.xml.in.h:183 msgid "DTK2000" msgstr "DTK2000" -#: ../rules/base.xml.in.h:181 +#: ../rules/base.xml.in.h:184 msgid "Dan" msgstr "Dan" -#: ../rules/base.xml.in.h:182 +#: ../rules/base.xml.in.h:185 msgid "Dead acute" msgstr "Chết sắc" -#: ../rules/base.xml.in.h:183 +#: ../rules/base.xml.in.h:186 msgid "Dead grave acute" msgstr "Chết huyá»n sắc" -#: ../rules/base.xml.in.h:184 +#: ../rules/base.xml.in.h:187 msgid "Default numeric keypad keys" msgstr "Các phÃm vùng số mặc định" -#: ../rules/base.xml.in.h:185 +#: ../rules/base.xml.in.h:188 msgid "Dell" msgstr "Dell" -#: ../rules/base.xml.in.h:186 +#: ../rules/base.xml.in.h:189 msgid "Dell 101-key PC" msgstr "Dell PC 101 phÃm" -#: ../rules/base.xml.in.h:187 +#: ../rules/base.xml.in.h:190 msgid "Dell Laptop/notebook Inspiron 6xxx/8xxx" msgstr "Xách tay Dell Inspiron 6xxx/8xxx" -#: ../rules/base.xml.in.h:188 +#: ../rules/base.xml.in.h:191 msgid "Dell Laptop/notebook Precision M series" msgstr "Xách tay Dell dãy Precision M" -#: ../rules/base.xml.in.h:189 +#: ../rules/base.xml.in.h:192 msgid "Dell Latitude series laptop" msgstr "Xách tay Dell dãy Latitude" -#: ../rules/base.xml.in.h:190 +#: ../rules/base.xml.in.h:193 msgid "Dell Precision M65" msgstr "Dell Precision M65" -#: ../rules/base.xml.in.h:191 +#: ../rules/base.xml.in.h:194 msgid "Dell SK-8125" msgstr "Dell SK-8125" -#: ../rules/base.xml.in.h:192 +#: ../rules/base.xml.in.h:195 msgid "Dell SK-8135" msgstr "Dell SK-8135" -#: ../rules/base.xml.in.h:193 +#: ../rules/base.xml.in.h:196 msgid "Dell USB Multimedia Keyboard" msgstr "Bà n phÃm Ä‘a phương tiện USB Dell" -#: ../rules/base.xml.in.h:194 +#: ../rules/base.xml.in.h:197 msgid "Denmark" msgstr "Äan Mạch" -#: ../rules/base.xml.in.h:195 +#: ../rules/base.xml.in.h:198 msgid "Deu" msgstr "Deu" -#: ../rules/base.xml.in.h:196 +#: ../rules/base.xml.in.h:199 msgid "Dexxa Wireless Desktop Keyboard" msgstr "Bà n phÃm Không dây Dexxa cho Desktop" -#: ../rules/base.xml.in.h:197 +#: ../rules/base.xml.in.h:200 msgid "Diamond 9801 / 9802 series" msgstr "Sê ri Diamond 9801 / 9802" -#: ../rules/base.xml.in.h:198 +#: ../rules/base.xml.in.h:201 msgid "Dvorak" msgstr "Dvorak" -#: ../rules/base.xml.in.h:199 +#: ../rules/base.xml.in.h:202 msgid "Dvorak (UK Punctuation)" msgstr "Dvorak (dấu chấm câu Quốc Anh)" -#: ../rules/base.xml.in.h:200 +#: ../rules/base.xml.in.h:203 msgid "Dvorak international" msgstr "Dvorak quốc tế" -#: ../rules/base.xml.in.h:201 +#: ../rules/base.xml.in.h:204 msgid "Dvorak, Polish quotes on key 1" msgstr "Dvorak, dấu ngoặc tiếng Ba Lan trên phÃm 1" -#: ../rules/base.xml.in.h:202 +#: ../rules/base.xml.in.h:205 msgid "Dvorak, Polish quotes on quotemark key" msgstr "Dvorak, dấu ngoặc Polish trên phÃm đánh dấu ngoặc" -#: ../rules/base.xml.in.h:203 +#: ../rules/base.xml.in.h:206 msgid "E" msgstr "E" -#: ../rules/base.xml.in.h:204 +#: ../rules/base.xml.in.h:207 msgid "Eastern" msgstr "Äông" -#: ../rules/base.xml.in.h:205 +#: ../rules/base.xml.in.h:208 msgid "Eliminate dead keys" msgstr "PhÃm chết loại trừ" -#: ../rules/base.xml.in.h:206 +#: ../rules/base.xml.in.h:209 msgid "Enable extra typographic characters" msgstr "Báºt thêm ký tá»± thuáºt in máy" -#: ../rules/base.xml.in.h:207 +#: ../rules/base.xml.in.h:210 msgid "English" msgstr "Anh" -#: ../rules/base.xml.in.h:208 +#: ../rules/base.xml.in.h:211 msgid "Ennyah DKB-1008" msgstr "Ennyah DKB-1008" -#: ../rules/base.xml.in.h:209 +#: ../rules/base.xml.in.h:212 msgid "Enter on keypad" msgstr "Enter trên vùng phÃm" -#: ../rules/base.xml.in.h:210 +#: ../rules/base.xml.in.h:213 msgid "Epo" msgstr "Epo" -#: ../rules/base.xml.in.h:211 +#: ../rules/base.xml.in.h:214 msgid "Ergonomic" msgstr "Tối ưu nhân tố" -#: ../rules/base.xml.in.h:212 +#: ../rules/base.xml.in.h:215 msgid "Esp" msgstr "Esp" -#: ../rules/base.xml.in.h:213 +#: ../rules/base.xml.in.h:216 msgid "Esperanto" msgstr "Ét-pe-ran-tô" -#: ../rules/base.xml.in.h:214 +#: ../rules/base.xml.in.h:217 msgid "Est" msgstr "Est" -#: ../rules/base.xml.in.h:215 +#: ../rules/base.xml.in.h:218 msgid "Estonia" msgstr "Ex-tô-ni-a" -#: ../rules/base.xml.in.h:216 +#: ../rules/base.xml.in.h:219 msgid "Eth" msgstr "Eth" -#: ../rules/base.xml.in.h:217 +#: ../rules/base.xml.in.h:220 msgid "Ethiopia" msgstr "Ê-ti-ô-pi" -#: ../rules/base.xml.in.h:218 +#: ../rules/base.xml.in.h:221 msgid "Evdev-managed keyboard" msgstr "Bà n phÃm quản lý bằng Evdev" -#: ../rules/base.xml.in.h:219 +#: ../rules/base.xml.in.h:222 msgid "Everex STEPnote" msgstr "Everex STEPnote" -#: ../rules/base.xml.in.h:220 +#: ../rules/base.xml.in.h:223 msgid "Ewe" msgstr "Ewe" -#: ../rules/base.xml.in.h:221 +#: ../rules/base.xml.in.h:224 msgid "Extended" msgstr "Mở rá»™ng" -#: ../rules/base.xml.in.h:222 +#: ../rules/base.xml.in.h:225 msgid "Extended - Winkeys" msgstr "Mở rá»™ng — Winkeys" -#: ../rules/base.xml.in.h:223 +#: ../rules/base.xml.in.h:226 msgid "Extended Backslash" msgstr "Gạch chéo ngược Mở rá»™ng" -#: ../rules/base.xml.in.h:224 +#: ../rules/base.xml.in.h:227 msgid "F-letter (F) variant" msgstr "Phương án chữ cái F (F)" -#: ../rules/base.xml.in.h:225 +#: ../rules/base.xml.in.h:228 msgid "FL90" msgstr "FL90" -#: ../rules/base.xml.in.h:226 +#: ../rules/base.xml.in.h:229 msgid "Fao" msgstr "Fao" -#: ../rules/base.xml.in.h:227 +#: ../rules/base.xml.in.h:230 msgid "Faroe Islands" msgstr "Quần Äảo Pha-rô" -#: ../rules/base.xml.in.h:228 +#: ../rules/base.xml.in.h:231 msgid "Fin" msgstr "Fin" -#: ../rules/base.xml.in.h:229 +#: ../rules/base.xml.in.h:232 msgid "Finland" msgstr "Phần Lan" #. This assumes the KP_ abstract symbols are actually useful for some apps #. The description needs to be rewritten -#: ../rules/base.xml.in.h:232 +#: ../rules/base.xml.in.h:235 msgid "Four-level key with abstract separators" msgstr "PhÃm bốn báºc có bá»™ phân cách ảo" -#: ../rules/base.xml.in.h:233 +#: ../rules/base.xml.in.h:236 msgid "Four-level key with comma" msgstr "PhÃm bốn báºc có dấu phẩy" -#: ../rules/base.xml.in.h:234 +#: ../rules/base.xml.in.h:237 msgid "Four-level key with dot" msgstr "PhÃm bốn báºc có chấm" -#: ../rules/base.xml.in.h:235 +#: ../rules/base.xml.in.h:238 msgid "Four-level key with dot, latin-9 restriction" msgstr "PhÃm bốn báºc có chấm, sá»± hạn chế latin-9" -#: ../rules/base.xml.in.h:236 +#: ../rules/base.xml.in.h:239 msgid "Four-level key with momayyez" msgstr "PhÃm bốn báºc có momayyez" -#: ../rules/base.xml.in.h:237 +#: ../rules/base.xml.in.h:240 msgid "Fra" msgstr "Fra" -#: ../rules/base.xml.in.h:238 +#: ../rules/base.xml.in.h:241 msgid "France" msgstr "Pháp" -#: ../rules/base.xml.in.h:239 +#: ../rules/base.xml.in.h:242 msgid "French" msgstr "Pháp" -#: ../rules/base.xml.in.h:240 +#: ../rules/base.xml.in.h:243 msgid "French (Macintosh)" msgstr "Pháp (Macintosh)" -#: ../rules/base.xml.in.h:241 +#: ../rules/base.xml.in.h:244 msgid "French (legacy)" msgstr "Pháp (di sản)" -#: ../rules/base.xml.in.h:242 +#: ../rules/base.xml.in.h:245 msgid "French Dvorak" msgstr "Pháp Dvorak" -#: ../rules/base.xml.in.h:243 +#: ../rules/base.xml.in.h:246 msgid "French, Sun dead keys" msgstr "Pháp, phÃm chết Sun" -#: ../rules/base.xml.in.h:244 +#: ../rules/base.xml.in.h:247 msgid "French, eliminate dead keys" msgstr "Pháp, phÃm chết loại trừ" -#: ../rules/base.xml.in.h:245 +#: ../rules/base.xml.in.h:248 msgid "Fujitsu-Siemens Computers AMILO laptop" msgstr "Máy tÃnh xách tay AMILO Fujitsu-Siemens" -#: ../rules/base.xml.in.h:246 +#: ../rules/base.xml.in.h:249 msgid "Fula" msgstr "Fula" -#: ../rules/base.xml.in.h:247 +#: ../rules/base.xml.in.h:250 msgid "GBr" msgstr "GBr" -#: ../rules/base.xml.in.h:248 +#: ../rules/base.xml.in.h:251 msgid "Ga" msgstr "Ga" -#: ../rules/base.xml.in.h:249 +#: ../rules/base.xml.in.h:252 msgid "Generic 101-key PC" msgstr "PC chung 101 phÃm" -#: ../rules/base.xml.in.h:250 +#: ../rules/base.xml.in.h:253 msgid "Generic 102-key (Intl) PC" msgstr "PC chung 102 phÃm (Intl)" -#: ../rules/base.xml.in.h:251 +#: ../rules/base.xml.in.h:254 msgid "Generic 104-key PC" msgstr "PC chung 104 phÃm" -#: ../rules/base.xml.in.h:252 +#: ../rules/base.xml.in.h:255 msgid "Generic 105-key (Intl) PC" msgstr "PC chung 105 phÃm (Intl)" # Name: don't translate/Tên: đừng dịch -#: ../rules/base.xml.in.h:253 +#: ../rules/base.xml.in.h:256 msgid "Genius Comfy KB-12e" msgstr "Genius Comfy KB-12e" -#: ../rules/base.xml.in.h:254 +#: ../rules/base.xml.in.h:257 msgid "Genius Comfy KB-16M / Genius MM Keyboard KWD-910" msgstr "Genius Tiện lợi KB-16M / Bà n phÃm Genius MM KWD-910" -#: ../rules/base.xml.in.h:255 +#: ../rules/base.xml.in.h:258 msgid "Genius Comfy KB-21e-Scroll" msgstr "Genius Comfy KB-21e-Scroll" # Name: don't translate/Tên: đừng dịch -#: ../rules/base.xml.in.h:256 +#: ../rules/base.xml.in.h:259 msgid "Genius KB-19e NB" msgstr "Genius KB-19e NB" # Name: don't translate/Tên: đừng dịch -#: ../rules/base.xml.in.h:257 +#: ../rules/base.xml.in.h:260 msgid "Genius KKB-2050HS" msgstr "Genius KKB-2050HS" -#: ../rules/base.xml.in.h:258 +#: ../rules/base.xml.in.h:261 msgid "Geo" msgstr "Geo" -#: ../rules/base.xml.in.h:259 +#: ../rules/base.xml.in.h:262 msgid "Georgia" msgstr "Gi-oa-gi-a" -#: ../rules/base.xml.in.h:260 +#: ../rules/base.xml.in.h:263 msgid "Georgian" msgstr "Gi-oa-gi-a" -#: ../rules/base.xml.in.h:261 +#: ../rules/base.xml.in.h:264 msgid "Georgian AZERTY Tskapo" msgstr "Gi-oa-gi-a AZERTY Tskapo" -#: ../rules/base.xml.in.h:262 +#: ../rules/base.xml.in.h:265 msgid "German (Macintosh)" msgstr "Äức (Macintosh)" -#: ../rules/base.xml.in.h:263 +#: ../rules/base.xml.in.h:266 msgid "German, Sun dead keys" msgstr "Äức, phÃm chết Sun" -#: ../rules/base.xml.in.h:264 +#: ../rules/base.xml.in.h:267 msgid "German, eliminate dead keys" msgstr "Äức, phÃm chết loại trừ" -#: ../rules/base.xml.in.h:265 +#: ../rules/base.xml.in.h:268 msgid "Germany" msgstr "Äức" -#: ../rules/base.xml.in.h:266 +#: ../rules/base.xml.in.h:269 msgid "Gha" msgstr "Gha" -#: ../rules/base.xml.in.h:267 +#: ../rules/base.xml.in.h:270 msgid "Ghana" msgstr "Gha-na" -#: ../rules/base.xml.in.h:268 +#: ../rules/base.xml.in.h:271 msgid "Gre" msgstr "Gre" -#: ../rules/base.xml.in.h:269 +#: ../rules/base.xml.in.h:272 msgid "Greece" msgstr "Hy Lạp" -#: ../rules/base.xml.in.h:270 +#: ../rules/base.xml.in.h:273 msgid "Group toggle on multiply/divide key" msgstr "Báºt/tắt bó vá»›i phÃm nhân/chia" -#: ../rules/base.xml.in.h:271 +#: ../rules/base.xml.in.h:274 msgid "Gui" msgstr "Gui" -#: ../rules/base.xml.in.h:272 +#: ../rules/base.xml.in.h:275 msgid "Guinea" msgstr "Ghi-nê" -#: ../rules/base.xml.in.h:273 +#: ../rules/base.xml.in.h:276 msgid "Gujarati" msgstr "Gu-gia-ra-ti" -#: ../rules/base.xml.in.h:274 +#: ../rules/base.xml.in.h:277 msgid "Gurmukhi" msgstr "Gổ-mu-khi" -#: ../rules/base.xml.in.h:275 +#: ../rules/base.xml.in.h:278 msgid "Gurmukhi Jhelum" msgstr "Gổ-mu-khi Jhelum" -#: ../rules/base.xml.in.h:276 +#: ../rules/base.xml.in.h:279 msgid "Gyration" msgstr "Sá»± chuyển hồi" -#: ../rules/base.xml.in.h:277 +#: ../rules/base.xml.in.h:280 msgid "Happy Hacking Keyboard" msgstr "Bà n phÃm Happy Hacking" -#: ../rules/base.xml.in.h:278 +#: ../rules/base.xml.in.h:281 msgid "Happy Hacking Keyboard for Mac" msgstr "Bà n phÃm Happy Hacking cho Mac" -#: ../rules/base.xml.in.h:279 +#: ../rules/base.xml.in.h:282 msgid "Hausa" msgstr "Hau-xa" -#: ../rules/base.xml.in.h:280 +#: ../rules/base.xml.in.h:283 msgid "Hewlett-Packard Internet Keyboard" msgstr "Bà n phÃm Internet Hewlett-Packard" -#: ../rules/base.xml.in.h:281 +#: ../rules/base.xml.in.h:284 msgid "Hewlett-Packard Omnibook 500 FA" msgstr "Hewlett-Packard Omnibook 500 FA" -#: ../rules/base.xml.in.h:282 +#: ../rules/base.xml.in.h:285 msgid "Hewlett-Packard Omnibook 5xx" msgstr "Hewlett-Packard Omnibook 5xx" -#: ../rules/base.xml.in.h:283 +#: ../rules/base.xml.in.h:286 msgid "Hewlett-Packard Omnibook 6000/6100" msgstr "Hewlett-Packard Omnibook 6000/6100" -#: ../rules/base.xml.in.h:284 +#: ../rules/base.xml.in.h:287 msgid "Hewlett-Packard Omnibook XE3 GC" msgstr "Hewlett-Packard Omnibook XE3 GC" -#: ../rules/base.xml.in.h:285 +#: ../rules/base.xml.in.h:288 msgid "Hewlett-Packard Omnibook XE3 GF" msgstr "Hewlett-Packard Omnibook XE3 GF" -#: ../rules/base.xml.in.h:286 +#: ../rules/base.xml.in.h:289 msgid "Hewlett-Packard Omnibook XT1000" msgstr "Hewlett-Packard Omnibook XT1000" -#: ../rules/base.xml.in.h:287 +#: ../rules/base.xml.in.h:290 msgid "Hewlett-Packard Pavilion ZT11xx" msgstr "Hewlett-Packard Pavilion ZT11xx" -#: ../rules/base.xml.in.h:288 +#: ../rules/base.xml.in.h:291 msgid "Hewlett-Packard Pavilion dv5" msgstr "Hewlett-Packard Pavilion dv5" -#: ../rules/base.xml.in.h:289 +#: ../rules/base.xml.in.h:292 msgid "Hewlett-Packard SK-250x Multimedia Keyboard" msgstr "Bà n phÃm phim nhạc Hewlett-Packard SK-250x" -#: ../rules/base.xml.in.h:290 +#: ../rules/base.xml.in.h:293 msgid "Hewlett-Packard nx9020" msgstr "Hewlett-Packard nx9020" -#: ../rules/base.xml.in.h:291 +#: ../rules/base.xml.in.h:294 msgid "Hexadecimal" msgstr "Tháºp lục" -#: ../rules/base.xml.in.h:292 +#: ../rules/base.xml.in.h:295 msgid "Hindi Bolnagri" msgstr "Hin-Ä‘i Bolnagri" -#: ../rules/base.xml.in.h:293 +#: ../rules/base.xml.in.h:296 msgid "Hindi Wx" msgstr "Hin-Ä‘i Wx" -#: ../rules/base.xml.in.h:294 +#: ../rules/base.xml.in.h:297 msgid "Homophonic" msgstr "Cùng má»™t chá»§ Ä‘iệu" -#: ../rules/base.xml.in.h:295 +#: ../rules/base.xml.in.h:298 msgid "Honeywell Euroboard" msgstr "Honeywell Euroboard" -#: ../rules/base.xml.in.h:296 +#: ../rules/base.xml.in.h:299 msgid "Hrv" msgstr "Hrv" -#: ../rules/base.xml.in.h:297 +#: ../rules/base.xml.in.h:300 msgid "Hun" msgstr "Hun" -#: ../rules/base.xml.in.h:298 +#: ../rules/base.xml.in.h:301 msgid "Hungary" msgstr "Hun-ga-ri" -#: ../rules/base.xml.in.h:299 +#: ../rules/base.xml.in.h:302 msgid "Hyper is mapped to Win-keys" msgstr "Hyper ánh xạ tá»›i các phÃm Win" -#: ../rules/base.xml.in.h:300 +#: ../rules/base.xml.in.h:303 msgid "IBM (LST 1205-92)" msgstr "IBM (LST 1205-92)" -#: ../rules/base.xml.in.h:301 +#: ../rules/base.xml.in.h:304 msgid "IBM Rapid Access" msgstr "Truy cáºp nhanh IBM" -#: ../rules/base.xml.in.h:302 +#: ../rules/base.xml.in.h:305 msgid "IBM Rapid Access II" msgstr "Truy cáºp nhanh IBM II" -#: ../rules/base.xml.in.h:303 +#: ../rules/base.xml.in.h:306 msgid "IBM Space Saver" msgstr "IBM Space Saver" -#: ../rules/base.xml.in.h:304 +#: ../rules/base.xml.in.h:307 msgid "IBM ThinkPad 560Z/600/600E/A22E" msgstr "IBM ThinkPad 560Z/600/600E/A22E" -#: ../rules/base.xml.in.h:305 +#: ../rules/base.xml.in.h:308 msgid "IBM ThinkPad 560Z/600/600E/A22E, Intl" msgstr "IBM ThinkPad 560Z/600/600E/A22E, quốc tế" -#: ../rules/base.xml.in.h:306 +#: ../rules/base.xml.in.h:309 msgid "IBM ThinkPad R60/T60/R61/T61" msgstr "IBM ThinkPad R60/T60/R61/T61" -#: ../rules/base.xml.in.h:307 +#: ../rules/base.xml.in.h:310 msgid "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" msgstr "IBM ThinkPad Z60m/Z60t/Z61m/Z61t" -#: ../rules/base.xml.in.h:308 +#: ../rules/base.xml.in.h:311 msgid "ISO Alternate" msgstr "ISO Xen kẽ" -#: ../rules/base.xml.in.h:309 +#: ../rules/base.xml.in.h:312 msgid "Iceland" msgstr "Băng Äảo" -#: ../rules/base.xml.in.h:310 +#: ../rules/base.xml.in.h:313 msgid "Igbo" msgstr "Ig-bô" -#: ../rules/base.xml.in.h:311 +#: ../rules/base.xml.in.h:314 msgid "Include dead tilde" msgstr "Bao gồm dấu sóng chết" -#: ../rules/base.xml.in.h:312 +#: ../rules/base.xml.in.h:315 msgid "Ind" msgstr "Ind" -#: ../rules/base.xml.in.h:313 +#: ../rules/base.xml.in.h:316 msgid "India" msgstr "Ấn Äá»™" -#: ../rules/base.xml.in.h:314 +#: ../rules/base.xml.in.h:317 msgid "International (AltGr dead keys)" msgstr "Quốc tế (vá»›i phÃm chết AltGr)" -#: ../rules/base.xml.in.h:315 +#: ../rules/base.xml.in.h:318 msgid "International (with dead keys)" msgstr "Quốc tế (vá»›i phÃm chết)" -#: ../rules/base.xml.in.h:316 +#: ../rules/base.xml.in.h:319 msgid "Inuktitut" msgstr "I-nukh-ti-tu-th" -#: ../rules/base.xml.in.h:317 +#: ../rules/base.xml.in.h:320 msgid "Iran" msgstr "I-rắn" -#: ../rules/base.xml.in.h:318 +#: ../rules/base.xml.in.h:321 msgid "Iraq" msgstr "I-rắc" -#: ../rules/base.xml.in.h:319 +#: ../rules/base.xml.in.h:322 msgid "Ireland" msgstr "Ãi-nhÄ©-lan" -#: ../rules/base.xml.in.h:320 +#: ../rules/base.xml.in.h:323 msgid "Irl" msgstr "Irl" -#: ../rules/base.xml.in.h:321 +#: ../rules/base.xml.in.h:324 msgid "Irn" msgstr "Irn" -#: ../rules/base.xml.in.h:322 +#: ../rules/base.xml.in.h:325 msgid "Irq" msgstr "Irq" -#: ../rules/base.xml.in.h:323 +#: ../rules/base.xml.in.h:326 msgid "Isl" msgstr "Isl" -#: ../rules/base.xml.in.h:324 +#: ../rules/base.xml.in.h:327 msgid "Isr" msgstr "Isr" -#: ../rules/base.xml.in.h:325 +#: ../rules/base.xml.in.h:328 msgid "Israel" msgstr "Do Thái" -#: ../rules/base.xml.in.h:326 +#: ../rules/base.xml.in.h:329 msgid "Ita" msgstr "Ita" -#: ../rules/base.xml.in.h:327 +#: ../rules/base.xml.in.h:330 msgid "Italy" msgstr "Ã" -#: ../rules/base.xml.in.h:328 +#: ../rules/base.xml.in.h:331 msgid "Japan" msgstr "Nháºt Bản" -#: ../rules/base.xml.in.h:329 +#: ../rules/base.xml.in.h:332 msgid "Japan (PC-98xx Series)" msgstr "Nháºt (dãy PC-98xx)" -#: ../rules/base.xml.in.h:330 +#: ../rules/base.xml.in.h:333 msgid "Japanese keyboard options" msgstr "Tùy chá»n bà n phÃm tiếng Nháºt" -#: ../rules/base.xml.in.h:331 +#: ../rules/base.xml.in.h:334 msgid "Jpn" msgstr "Jpn" -#: ../rules/base.xml.in.h:332 +#: ../rules/base.xml.in.h:335 msgid "Kalmyk" msgstr "Kalmyk" -#: ../rules/base.xml.in.h:333 +#: ../rules/base.xml.in.h:336 msgid "Kana" msgstr "Kana" -#: ../rules/base.xml.in.h:334 +#: ../rules/base.xml.in.h:337 msgid "Kana Lock key is locking" msgstr "PhÃm Kana Lock sẽ khoá" -#: ../rules/base.xml.in.h:335 +#: ../rules/base.xml.in.h:338 msgid "Kannada" msgstr "Kannada" -#: ../rules/base.xml.in.h:336 +#: ../rules/base.xml.in.h:339 msgid "Kashubian" msgstr "Kha-su-bi" -#: ../rules/base.xml.in.h:337 +#: ../rules/base.xml.in.h:340 msgid "Kaz" msgstr "Kaz" -#: ../rules/base.xml.in.h:338 +#: ../rules/base.xml.in.h:341 msgid "Kazakh with Russian" msgstr "Kha-xắc vá»›i tiếng Nga" -#: ../rules/base.xml.in.h:339 +#: ../rules/base.xml.in.h:342 msgid "Kazakhstan" msgstr "Kha-xắc-x-tanh" -#: ../rules/base.xml.in.h:340 +#: ../rules/base.xml.in.h:343 msgid "Key sequence to kill the X server" msgstr "Dãy phÃm để giết trình phục vụ X" -#: ../rules/base.xml.in.h:341 +#: ../rules/base.xml.in.h:344 msgid "Key to choose 3rd level" msgstr "PhÃm để chá»n cấp ba" -#: ../rules/base.xml.in.h:342 +#: ../rules/base.xml.in.h:345 msgid "Key(s) to change layout" msgstr "(Các) phÃm để chuyển đổi bố trÃ" -#: ../rules/base.xml.in.h:343 -msgid "Keypad" -msgstr "Vùng phÃm" - -#: ../rules/base.xml.in.h:344 +#: ../rules/base.xml.in.h:346 msgid "Keytronic FlexPro" msgstr "Keytronic FlexPro" -#: ../rules/base.xml.in.h:345 +#: ../rules/base.xml.in.h:347 msgid "Kgz" msgstr "Kgz" -#: ../rules/base.xml.in.h:346 +#: ../rules/base.xml.in.h:348 msgid "Khm" msgstr "Khm" -#: ../rules/base.xml.in.h:347 +#: ../rules/base.xml.in.h:349 msgid "Komi" msgstr "Komi" -#: ../rules/base.xml.in.h:348 +#: ../rules/base.xml.in.h:350 msgid "Kor" msgstr "Kor" -#: ../rules/base.xml.in.h:349 +#: ../rules/base.xml.in.h:351 msgid "Korea, Republic of" msgstr "Cá»™ng Hoà Nam Hà n" -#: ../rules/base.xml.in.h:350 +#: ../rules/base.xml.in.h:352 msgid "Ktunaxa" msgstr "Ktunaxa" -#: ../rules/base.xml.in.h:351 +#: ../rules/base.xml.in.h:353 msgid "Kurdish, (F)" msgstr "Kuổ-Ä‘Ãt (F)" -#: ../rules/base.xml.in.h:352 +#: ../rules/base.xml.in.h:354 msgid "Kurdish, Arabic-Latin" msgstr "Kuổ-Ä‘Ãt, A Ráºp/La-tinh" -#: ../rules/base.xml.in.h:353 +#: ../rules/base.xml.in.h:355 msgid "Kurdish, Latin Alt-Q" msgstr "Kuổ-Ä‘Ãt, La-tinh Alt-Q" -#: ../rules/base.xml.in.h:354 +#: ../rules/base.xml.in.h:356 msgid "Kurdish, Latin Q" msgstr "Kuổ-Ä‘Ãt, La-tinh Q" -#: ../rules/base.xml.in.h:355 +#: ../rules/base.xml.in.h:357 msgid "Kyrgyzstan" msgstr "Kyr-gi-x-tanh" -#: ../rules/base.xml.in.h:356 +#: ../rules/base.xml.in.h:358 msgid "LAm" msgstr "LAm" -#: ../rules/base.xml.in.h:357 +#: ../rules/base.xml.in.h:359 msgid "LEKP" msgstr "LEKP" -#: ../rules/base.xml.in.h:358 +#: ../rules/base.xml.in.h:360 msgid "LEKPa" msgstr "LEKPa" -#: ../rules/base.xml.in.h:359 +#: ../rules/base.xml.in.h:361 msgid "Lao" msgstr "Là o" -#: ../rules/base.xml.in.h:360 +#: ../rules/base.xml.in.h:362 msgid "Laos" msgstr "Là o" -#: ../rules/base.xml.in.h:361 +#: ../rules/base.xml.in.h:363 msgid "Laptop/notebook Compaq (eg. Armada) Laptop Keyboard" msgstr "Bà n phÃm nhá» gá»n cho máy xách tay/notebook Compaq (và dụ Armada)" -#: ../rules/base.xml.in.h:362 +#: ../rules/base.xml.in.h:364 msgid "Laptop/notebook Compaq (eg. Presario) Internet Keyboard" msgstr "Bà n phÃm Internet cho máy xách tay/notebook Compaq (và dụ Presario)" -#: ../rules/base.xml.in.h:363 +#: ../rules/base.xml.in.h:365 msgid "Laptop/notebook eMachines m68xx" msgstr "Xách tay eMachines m68xx" -#: ../rules/base.xml.in.h:364 +#: ../rules/base.xml.in.h:366 msgid "Latin" msgstr "La-tinh" -#: ../rules/base.xml.in.h:365 +#: ../rules/base.xml.in.h:367 msgid "Latin American" msgstr "La-tinh Mỹ" -#: ../rules/base.xml.in.h:366 +#: ../rules/base.xml.in.h:368 msgid "Latin Unicode" msgstr "La-tinh Unicode" -#: ../rules/base.xml.in.h:367 +#: ../rules/base.xml.in.h:369 msgid "Latin Unicode qwerty" msgstr "La-tinh Unicode qwerty" -#: ../rules/base.xml.in.h:368 +#: ../rules/base.xml.in.h:370 msgid "Latin qwerty" msgstr "La-tinh qwerty" -#: ../rules/base.xml.in.h:369 +#: ../rules/base.xml.in.h:371 msgid "Latin unicode" msgstr "La-tinh Unicode" -#: ../rules/base.xml.in.h:370 +#: ../rules/base.xml.in.h:372 msgid "Latin unicode qwerty" msgstr "La-tinh Unicode QWERTY" -#: ../rules/base.xml.in.h:371 +#: ../rules/base.xml.in.h:373 msgid "Latin with guillemets" msgstr "La-tinh vá»›i « chim uria »" -#: ../rules/base.xml.in.h:372 +#: ../rules/base.xml.in.h:374 msgid "Latvia" msgstr "Lát-via" -#: ../rules/base.xml.in.h:373 +#: ../rules/base.xml.in.h:375 msgid "Lav" msgstr "Lav" -#: ../rules/base.xml.in.h:374 +#: ../rules/base.xml.in.h:376 msgid "Left Alt" msgstr "Alt trái" -#: ../rules/base.xml.in.h:375 +#: ../rules/base.xml.in.h:377 msgid "Left Alt (while pressed)" msgstr "Alt trái (trong khi bấm)" -#: ../rules/base.xml.in.h:376 +#: ../rules/base.xml.in.h:378 msgid "Left Alt is swapped with Left Win" msgstr "Alt bên trái được trao đổi vá»›i phÃm Win bên trái" -#: ../rules/base.xml.in.h:377 +#: ../rules/base.xml.in.h:379 msgid "Left Ctrl" msgstr "Ctrl trái" -#: ../rules/base.xml.in.h:378 +#: ../rules/base.xml.in.h:380 msgid "Left Ctrl+Left Shift" msgstr "Ctrl trái+Shift trái" -#: ../rules/base.xml.in.h:379 +#: ../rules/base.xml.in.h:381 msgid "Left Shift" msgstr "Shift trái" -#: ../rules/base.xml.in.h:380 +#: ../rules/base.xml.in.h:382 msgid "Left Win" msgstr "Win trái" -#: ../rules/base.xml.in.h:381 +#: ../rules/base.xml.in.h:383 msgid "Left Win (to first layout), Right Win/Menu (to last layout)" msgstr "Win trái (tá»›i bố trà đầu tiên), Win phải/Trình đơn (tá»›i bố trà cuối cùng)" -#: ../rules/base.xml.in.h:382 +#: ../rules/base.xml.in.h:384 msgid "Left Win (while pressed)" msgstr "Win trái (trong khi bấm)" -#: ../rules/base.xml.in.h:383 +#: ../rules/base.xml.in.h:385 msgid "Left hand" msgstr "Thuáºn tay trái" -#: ../rules/base.xml.in.h:384 +#: ../rules/base.xml.in.h:386 msgid "Left handed Dvorak" msgstr "Dvorak thuáºn tay trái" -#: ../rules/base.xml.in.h:385 +#: ../rules/base.xml.in.h:387 msgid "Legacy" msgstr "Thừa tá»±" -#: ../rules/base.xml.in.h:386 +#: ../rules/base.xml.in.h:388 msgid "Legacy Wang 724" msgstr "Wang 724 thừa tá»±" #. Actually, with KP_SEPARATOR, as the old keypad(comma) -#: ../rules/base.xml.in.h:388 +#: ../rules/base.xml.in.h:390 msgid "Legacy key with comma" msgstr "PhÃm thừa tá»± có dấu phẩy" -#: ../rules/base.xml.in.h:389 +#: ../rules/base.xml.in.h:391 msgid "Legacy key with dot" msgstr "PhÃm thừa tá»± có chấm" -#: ../rules/base.xml.in.h:390 +#: ../rules/base.xml.in.h:392 msgid "Less-than/Greater-than" msgstr "Nhá»/Lá»›n hÆ¡n" -#: ../rules/base.xml.in.h:391 +#: ../rules/base.xml.in.h:393 msgid "Lithuania" msgstr "Li-tu-a-ni" -#: ../rules/base.xml.in.h:392 +#: ../rules/base.xml.in.h:394 msgid "Logitech Access Keyboard" msgstr "Bà n phÃm Truy cáºp Logitech" -#: ../rules/base.xml.in.h:393 +#: ../rules/base.xml.in.h:395 msgid "Logitech Cordless Desktop" msgstr "Logitech Cordless Desktop" -#: ../rules/base.xml.in.h:394 +#: ../rules/base.xml.in.h:396 msgid "Logitech Cordless Desktop (alternate option)" msgstr "Logitech Cordless Desktop (tùy chá»n thay thế)" -#: ../rules/base.xml.in.h:395 +#: ../rules/base.xml.in.h:397 msgid "Logitech Cordless Desktop EX110" msgstr "Logitech Cordless Desktop EX110" -#: ../rules/base.xml.in.h:396 +#: ../rules/base.xml.in.h:398 msgid "Logitech Cordless Desktop LX-300" msgstr "Logitech Cordless Desktop LX-300" -#: ../rules/base.xml.in.h:397 +#: ../rules/base.xml.in.h:399 msgid "Logitech Cordless Desktop Navigator" msgstr "Logitech Cordless Desktop Navigator" -#: ../rules/base.xml.in.h:398 +#: ../rules/base.xml.in.h:400 msgid "Logitech Cordless Desktop Optical" msgstr "Logitech Cordless Desktop Optical" -#: ../rules/base.xml.in.h:399 +#: ../rules/base.xml.in.h:401 msgid "Logitech Cordless Desktop Pro (alternate option 2)" msgstr "Logitech Cordless Desktop Pro (luân phiên tùy chá»n 2)" -#: ../rules/base.xml.in.h:400 +#: ../rules/base.xml.in.h:402 msgid "Logitech Cordless Desktop iTouch" msgstr "Logitech Cordless Desktop iTouch" -#: ../rules/base.xml.in.h:401 +#: ../rules/base.xml.in.h:403 msgid "Logitech Cordless Freedom/Desktop Navigator" msgstr "Logitech Cordless Freedom/Desktop Navigator" -#: ../rules/base.xml.in.h:402 +#: ../rules/base.xml.in.h:404 msgid "Logitech G15 extra keys via G15daemon" msgstr "Logitech G15 các phÃm thêm thông qua G15daemon" -#: ../rules/base.xml.in.h:403 +#: ../rules/base.xml.in.h:405 msgid "Logitech Generic Keyboard" msgstr "Bà n phÃm chung Logitech" -#: ../rules/base.xml.in.h:404 +#: ../rules/base.xml.in.h:406 msgid "Logitech Internet 350 Keyboard" msgstr "Bà n phÃm Internet Logitech 350" -#: ../rules/base.xml.in.h:405 +#: ../rules/base.xml.in.h:407 msgid "Logitech Internet Keyboard" msgstr "Bà n phÃm Internet Logitech" -#: ../rules/base.xml.in.h:406 +#: ../rules/base.xml.in.h:408 msgid "Logitech Internet Navigator Keyboard" msgstr "Bà n phÃm Logitech Internet Navigator" -#: ../rules/base.xml.in.h:407 +#: ../rules/base.xml.in.h:409 msgid "Logitech Media Elite Keyboard" msgstr "Bà n phÃm Logitech Media Elite" -#: ../rules/base.xml.in.h:408 +#: ../rules/base.xml.in.h:410 msgid "Logitech Ultra-X Cordless Media Desktop Keyboard" msgstr "Bà n phÃm Logitech Ultra-X Cordless Media Desktop" -#: ../rules/base.xml.in.h:409 +#: ../rules/base.xml.in.h:411 msgid "Logitech Ultra-X Keyboard" msgstr "Bà n phÃm Logitech Ultra-X" -#: ../rules/base.xml.in.h:410 +#: ../rules/base.xml.in.h:412 msgid "Logitech diNovo Edge Keyboard" msgstr "Bà n phÃm Logitech diNovo Edge" -#: ../rules/base.xml.in.h:411 +#: ../rules/base.xml.in.h:413 msgid "Logitech diNovo Keyboard" msgstr "Bà n phÃm Logitech diNovo" -#: ../rules/base.xml.in.h:412 +#: ../rules/base.xml.in.h:414 msgid "Logitech iTouch" msgstr "Logitech iTouch" -#: ../rules/base.xml.in.h:413 +#: ../rules/base.xml.in.h:415 msgid "Logitech iTouch Cordless Keyboard (model Y-RB6)" msgstr "Bà n phÃm Không dây Logitech iTouch (mẫu mã Y-RB6)" -#: ../rules/base.xml.in.h:414 +#: ../rules/base.xml.in.h:416 msgid "Logitech iTouch Internet Navigator Keyboard SE" msgstr "Bà n phÃm Logitech iTouch Internet Navigator SE" -#: ../rules/base.xml.in.h:415 +#: ../rules/base.xml.in.h:417 msgid "Logitech iTouch Internet Navigator Keyboard SE (USB)" msgstr "Bà n phÃm Logitech iTouch Internet Navigator SE (USB)" -#: ../rules/base.xml.in.h:416 +#: ../rules/base.xml.in.h:418 msgid "Lower Sorbian" msgstr "Xoa-bi Thấp" -#: ../rules/base.xml.in.h:417 +#: ../rules/base.xml.in.h:419 msgid "Lower Sorbian (qwertz)" msgstr "Xoa-bi Thấp (qwertz)" -#: ../rules/base.xml.in.h:418 +#: ../rules/base.xml.in.h:420 msgid "Ltu" msgstr "Ltu" -#: ../rules/base.xml.in.h:419 +#: ../rules/base.xml.in.h:421 msgid "MESS" msgstr "MESS" -#: ../rules/base.xml.in.h:420 +#: ../rules/base.xml.in.h:422 msgid "MNE" msgstr "MNE" -#: ../rules/base.xml.in.h:421 +#: ../rules/base.xml.in.h:423 msgid "MacBook/MacBook Pro" msgstr "MacBook/MacBook Pro" -#: ../rules/base.xml.in.h:422 +#: ../rules/base.xml.in.h:424 msgid "MacBook/MacBook Pro (Intl)" msgstr "MacBook/MacBook Pro (quốc tế)" -#: ../rules/base.xml.in.h:423 +#: ../rules/base.xml.in.h:425 msgid "Macedonia" msgstr "Ma-xê-đô-ni-a" -#: ../rules/base.xml.in.h:424 +#: ../rules/base.xml.in.h:426 msgid "Macintosh" msgstr "Macintosh" -#: ../rules/base.xml.in.h:425 +#: ../rules/base.xml.in.h:427 msgid "Macintosh Old" msgstr "Macintosh CÅ©" -#: ../rules/base.xml.in.h:426 +#: ../rules/base.xml.in.h:428 msgid "Macintosh, Sun dead keys" msgstr "Macintosh, phÃm chết Sun" -#: ../rules/base.xml.in.h:427 +#: ../rules/base.xml.in.h:429 msgid "Macintosh, eliminate dead keys" msgstr "Macintosh, phÃm chết loại trừ" -#: ../rules/base.xml.in.h:428 +#: ../rules/base.xml.in.h:430 msgid "Make CapsLock an additional Backspace" msgstr "Äặt CapsLock là m má»™t phÃm Xoá lùi bổ sung" -#: ../rules/base.xml.in.h:429 +#: ../rules/base.xml.in.h:431 msgid "Make CapsLock an additional Ctrl" msgstr "Äặt CapsLock là m má»™t phÃm Ctrl bổ sung" -#: ../rules/base.xml.in.h:430 +#: ../rules/base.xml.in.h:432 msgid "Make CapsLock an additional ESC" msgstr "Äặt CapsLock là m má»™t phÃm ESC bổ sung" -#: ../rules/base.xml.in.h:431 +#: ../rules/base.xml.in.h:433 +msgid "Make CapsLock an additional Hyper" +msgstr "Äặt CapsLock là m má»™t phÃm Hyper bổ sung" + +#: ../rules/base.xml.in.h:434 +msgid "Make CapsLock an additional NumLock" +msgstr "Äặt CapsLock là m má»™t phÃm NumLock bổ sung" + +#: ../rules/base.xml.in.h:435 +msgid "Make CapsLock an additional Super" +msgstr "Äặt CapsLock là m má»™t phÃm Super bổ sung" + +#: ../rules/base.xml.in.h:436 msgid "Mal" msgstr "Mal" -#: ../rules/base.xml.in.h:432 +#: ../rules/base.xml.in.h:437 msgid "Malayalam" msgstr "Malayalam" -#: ../rules/base.xml.in.h:433 +#: ../rules/base.xml.in.h:438 msgid "Malayalam Lalitha" msgstr "Malayalam Lalitha" -#: ../rules/base.xml.in.h:434 +#: ../rules/base.xml.in.h:439 msgid "Maldives" msgstr "Man-Ä‘i-vÆ¡-xợ" -#: ../rules/base.xml.in.h:435 +#: ../rules/base.xml.in.h:440 msgid "Malta" msgstr "Man-tợ" -#: ../rules/base.xml.in.h:436 +#: ../rules/base.xml.in.h:441 msgid "Maltese keyboard with US layout" msgstr "Bà n phÃm Man-tợ có bố trà Mỹ" -#: ../rules/base.xml.in.h:437 +#: ../rules/base.xml.in.h:442 msgid "Mao" msgstr "Mao" -#: ../rules/base.xml.in.h:438 +#: ../rules/base.xml.in.h:443 msgid "Maori" msgstr "Mao-ri" -#: ../rules/base.xml.in.h:439 +#: ../rules/base.xml.in.h:444 msgid "Memorex MX1998" msgstr "Memorex MX1998" -#: ../rules/base.xml.in.h:440 +#: ../rules/base.xml.in.h:445 msgid "Memorex MX2500 EZ-Access Keyboard" msgstr "Bà n phÃm Memorex MX2500 EZ-Access" -#: ../rules/base.xml.in.h:441 +#: ../rules/base.xml.in.h:446 msgid "Memorex MX2750" msgstr "Memorex MX2750" -#: ../rules/base.xml.in.h:442 +#: ../rules/base.xml.in.h:447 msgid "Menu" msgstr "Trình đơn" -#: ../rules/base.xml.in.h:443 +#: ../rules/base.xml.in.h:448 msgid "Meta is mapped to Left Win" msgstr "Meta ánh xạ tá»›i Win trái" -#: ../rules/base.xml.in.h:444 +#: ../rules/base.xml.in.h:449 msgid "Meta is mapped to Win keys" msgstr "Meta ánh xạ tá»›i các phÃm Win" -#: ../rules/base.xml.in.h:445 +#: ../rules/base.xml.in.h:450 msgid "Microsoft Comfort Curve Keyboard 2000" msgstr "Microsoft Comfort Curve Keyboard 2000" -#: ../rules/base.xml.in.h:446 +#: ../rules/base.xml.in.h:451 msgid "Microsoft Internet Keyboard" msgstr "Bà n phÃm Internet Microsoft" -#: ../rules/base.xml.in.h:447 +#: ../rules/base.xml.in.h:452 msgid "Microsoft Internet Keyboard Pro, Swedish" msgstr "Bà n phÃm Internet Microsoft Pro, Thụy Äiển" -#: ../rules/base.xml.in.h:448 +#: ../rules/base.xml.in.h:453 msgid "Microsoft Natural" msgstr "Microsoft Natural" -#: ../rules/base.xml.in.h:449 +#: ../rules/base.xml.in.h:454 msgid "Microsoft Natural Keyboard Elite" msgstr "Microsoft Natural Keyboard Elite" -#: ../rules/base.xml.in.h:450 +#: ../rules/base.xml.in.h:455 msgid "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:451 +#: ../rules/base.xml.in.h:456 msgid "Microsoft Natural Keyboard Pro OEM" msgstr "Microsoft Natural Keyboard Pro OEM" -#: ../rules/base.xml.in.h:452 +#: ../rules/base.xml.in.h:457 msgid "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" msgstr "Microsoft Natural Keyboard Pro USB / Microsoft Internet Keyboard Pro" -#: ../rules/base.xml.in.h:453 +#: ../rules/base.xml.in.h:458 msgid "Microsoft Natural Wireless Ergonomic Keyboard 7000" msgstr "Microsoft Natural Wireless Ergonomic Keyboard 7000" -#: ../rules/base.xml.in.h:454 +#: ../rules/base.xml.in.h:459 msgid "Microsoft Office Keyboard" msgstr "Bà n phÃm Văn phòng Microsoft" -#: ../rules/base.xml.in.h:455 +#: ../rules/base.xml.in.h:460 msgid "Microsoft Wireless Multimedia Keyboard 1.0A" msgstr "Microsoft Wireless Multimedia Keyboard 1.0A" -#: ../rules/base.xml.in.h:456 +#: ../rules/base.xml.in.h:461 msgid "Miscellaneous compatibility options" msgstr "Tùy chá»n tương thÃch khác" -#: ../rules/base.xml.in.h:457 +#: ../rules/base.xml.in.h:462 msgid "Mkd" msgstr "Mkd" -#: ../rules/base.xml.in.h:458 +#: ../rules/base.xml.in.h:463 msgid "Mlt" msgstr "Mlt" -#: ../rules/base.xml.in.h:459 +#: ../rules/base.xml.in.h:464 msgid "Mmr" msgstr "Mmr" -#: ../rules/base.xml.in.h:460 +#: ../rules/base.xml.in.h:465 msgid "Mng" msgstr "Mng" -#: ../rules/base.xml.in.h:461 +#: ../rules/base.xml.in.h:466 msgid "Mongolia" msgstr "Mông Cổ" -#: ../rules/base.xml.in.h:462 +#: ../rules/base.xml.in.h:467 msgid "Montenegro" msgstr "Mon-te-nê-gợ-rô" -#: ../rules/base.xml.in.h:463 +#: ../rules/base.xml.in.h:468 msgid "Morocco" msgstr "Ma Rốc" -#: ../rules/base.xml.in.h:464 +#: ../rules/base.xml.in.h:469 msgid "Multilingual" msgstr "Äa ngôn ngữ" -#: ../rules/base.xml.in.h:465 +#: ../rules/base.xml.in.h:470 msgid "Multilingual, first part" msgstr "Äa ngôn ngữ, phần đầu" -#: ../rules/base.xml.in.h:466 +#: ../rules/base.xml.in.h:471 msgid "Multilingual, second part" msgstr "Äa ngôn ngữ, phần hai" -#: ../rules/base.xml.in.h:467 +#: ../rules/base.xml.in.h:472 msgid "Myanmar" msgstr "Miến Äiện" -#: ../rules/base.xml.in.h:468 +#: ../rules/base.xml.in.h:473 msgid "NICOLA-F style Backspace" msgstr "Xoá lùi kiểu NICOLA-F" -#: ../rules/base.xml.in.h:469 +#: ../rules/base.xml.in.h:474 msgid "NLA" msgstr "NLA" -#: ../rules/base.xml.in.h:470 +#: ../rules/base.xml.in.h:475 msgid "Nativo" msgstr "Nativo" -#: ../rules/base.xml.in.h:471 +#: ../rules/base.xml.in.h:476 msgid "Nativo for Esperanto" msgstr "Nativo cho Ét-pe-ran-tô" -#: ../rules/base.xml.in.h:472 +#: ../rules/base.xml.in.h:477 msgid "Nativo for USA keyboards" msgstr "Nativo cho bà n phÃm Mỹ" -#: ../rules/base.xml.in.h:473 +#: ../rules/base.xml.in.h:478 msgid "Neo 2" msgstr "Neo 2" -#: ../rules/base.xml.in.h:474 +#: ../rules/base.xml.in.h:479 msgid "Nep" msgstr "Nep" -#: ../rules/base.xml.in.h:475 +#: ../rules/base.xml.in.h:480 msgid "Nepal" msgstr "Ne-pan" -#: ../rules/base.xml.in.h:476 +#: ../rules/base.xml.in.h:481 msgid "Netherlands" msgstr "Hà Lan" -#: ../rules/base.xml.in.h:477 +#: ../rules/base.xml.in.h:482 +msgid "New phonetic" +msgstr "Ngữ âm má»›i" + +#: ../rules/base.xml.in.h:483 msgid "Nig" msgstr "Nig" -#: ../rules/base.xml.in.h:478 +#: ../rules/base.xml.in.h:484 msgid "Nigeria" msgstr "Ni-gê-ri-a" -#: ../rules/base.xml.in.h:479 +#: ../rules/base.xml.in.h:485 msgid "Nld" msgstr "Nld" -#: ../rules/base.xml.in.h:480 +#: ../rules/base.xml.in.h:486 msgid "Non-breakable space character at fourth level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ tư" -#: ../rules/base.xml.in.h:481 +#: ../rules/base.xml.in.h:487 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ tư, ký tá»± dấu cách không thể ngắt mảnh ở báºc thứ sáu" -#: ../rules/base.xml.in.h:482 +#: ../rules/base.xml.in.h:488 msgid "Non-breakable space character at fourth level, thin non-breakable space character at sixth level (via Ctrl+Shift)" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ tư, ký tá»± dấu cách không thể ngắt mảnh ở báºc thứ sáu (dùng Ctrl+Shift)" -#: ../rules/base.xml.in.h:483 +#: ../rules/base.xml.in.h:489 msgid "Non-breakable space character at second level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ hai" -#: ../rules/base.xml.in.h:484 +#: ../rules/base.xml.in.h:490 msgid "Non-breakable space character at third level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ ba" -#: ../rules/base.xml.in.h:485 +#: ../rules/base.xml.in.h:491 msgid "Non-breakable space character at third level, nothing at fourth level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ ba, không nháºp gì ở báºc thứ tư" -#: ../rules/base.xml.in.h:486 +#: ../rules/base.xml.in.h:492 msgid "Non-breakable space character at third level, thin non-breakable space character at fourth level" msgstr "Ký tá»± dấu cách không thể ngắt ở báºc thứ ba, ký tá»± dấu cách không thể ngắt mảnh ở báºc thứ tư" -#: ../rules/base.xml.in.h:487 +#: ../rules/base.xml.in.h:493 msgid "Nor" msgstr "Nor" -#: ../rules/base.xml.in.h:488 +#: ../rules/base.xml.in.h:494 msgid "Northern Saami" msgstr "Bắc Xa-mi" -#: ../rules/base.xml.in.h:489 +#: ../rules/base.xml.in.h:495 msgid "Northern Saami, eliminate dead keys" msgstr "Bắc Xa-mi, phÃm chết loại trừ" -#: ../rules/base.xml.in.h:490 +#: ../rules/base.xml.in.h:496 msgid "Northgate OmniKey 101" msgstr "Northgate OmniKey 101" -#: ../rules/base.xml.in.h:491 +#: ../rules/base.xml.in.h:497 msgid "Norway" msgstr "Na Uy" -#: ../rules/base.xml.in.h:492 +#: ../rules/base.xml.in.h:498 msgid "NumLock" msgstr "NumLock" -#: ../rules/base.xml.in.h:493 +#: ../rules/base.xml.in.h:499 msgid "Numeric keypad delete key behaviour" msgstr "Ứng xá» phÃm xoá cá»§a vùng số" -#: ../rules/base.xml.in.h:494 +#: ../rules/base.xml.in.h:500 msgid "Numeric keypad keys work as with Mac" msgstr "PhÃm vùng số hoạt động như trên Mac" -#: ../rules/base.xml.in.h:495 +#: ../rules/base.xml.in.h:501 msgid "Numeric keypad layout selection" msgstr "Chá»n bố trà vùng phÃm số" -#: ../rules/base.xml.in.h:496 +#: ../rules/base.xml.in.h:502 msgid "OADG 109A" msgstr "OADG 109A" -#: ../rules/base.xml.in.h:497 +#: ../rules/base.xml.in.h:503 msgid "OLPC" msgstr "OLPC" -#: ../rules/base.xml.in.h:498 +#: ../rules/base.xml.in.h:504 msgid "OLPC Dari" msgstr "OLPC Dari" -#: ../rules/base.xml.in.h:499 +#: ../rules/base.xml.in.h:505 msgid "OLPC Pashto" msgstr "OLPC Pas-tô" -#: ../rules/base.xml.in.h:500 +#: ../rules/base.xml.in.h:506 msgid "OLPC Southern Uzbek" msgstr "OLPC Nam Ux-béc" -#: ../rules/base.xml.in.h:501 +#: ../rules/base.xml.in.h:507 msgid "Occitan" msgstr "Óc-khi-tanh" -#: ../rules/base.xml.in.h:502 +#: ../rules/base.xml.in.h:508 msgid "Ogham" msgstr "Og-âm" -#: ../rules/base.xml.in.h:503 +#: ../rules/base.xml.in.h:509 msgid "Ogham IS434" msgstr "Ogam IS434" -#: ../rules/base.xml.in.h:504 +#: ../rules/base.xml.in.h:510 msgid "Oriya" msgstr "Ô-ri-a" -#: ../rules/base.xml.in.h:505 +#: ../rules/base.xml.in.h:511 msgid "Ortek MCK-800 MM/Internet keyboard" msgstr "Bà n phÃm Ortek MCK-800 MM/Internet" -#: ../rules/base.xml.in.h:506 +#: ../rules/base.xml.in.h:512 msgid "Ossetian" msgstr "O-xét" -#: ../rules/base.xml.in.h:507 +#: ../rules/base.xml.in.h:513 msgid "Ossetian, Winkeys" msgstr "O-xét, phÃm Win" -#: ../rules/base.xml.in.h:508 +#: ../rules/base.xml.in.h:514 msgid "Ossetian, legacy" msgstr "O-xét, thừa tá»±" -#: ../rules/base.xml.in.h:509 +#: ../rules/base.xml.in.h:515 msgid "PC-98xx Series" msgstr "Sê ri PC-98xx" -#: ../rules/base.xml.in.h:510 +#: ../rules/base.xml.in.h:516 msgid "Pak" msgstr "Pak" -#: ../rules/base.xml.in.h:511 +#: ../rules/base.xml.in.h:517 msgid "Pakistan" msgstr "Pa-khi-x-tanh" -#: ../rules/base.xml.in.h:512 +#: ../rules/base.xml.in.h:518 msgid "Pashto" msgstr "Pas-tô" -#: ../rules/base.xml.in.h:513 +#: ../rules/base.xml.in.h:519 msgid "Pattachote" msgstr "Pa-ta-chô-te" -#: ../rules/base.xml.in.h:514 +#: ../rules/base.xml.in.h:520 +msgid "Persian, with Persian Keypad" +msgstr "Ba Tư có vùng phÃm Ba Tư" + +#: ../rules/base.xml.in.h:521 msgid "Phonetic" msgstr "Ngữ âm" -#: ../rules/base.xml.in.h:515 +#: ../rules/base.xml.in.h:522 msgid "Phonetic Winkeys" msgstr "Winkeys ngữ âm" -#: ../rules/base.xml.in.h:516 +#: ../rules/base.xml.in.h:523 msgid "Pol" msgstr "Pol" -#: ../rules/base.xml.in.h:517 +#: ../rules/base.xml.in.h:524 msgid "Poland" msgstr "Phần Lan" -#: ../rules/base.xml.in.h:518 +#: ../rules/base.xml.in.h:525 msgid "Polytonic" msgstr "Nhiá»u âm" -#: ../rules/base.xml.in.h:519 +#: ../rules/base.xml.in.h:526 msgid "Portugal" msgstr "Bồ Äà o Nha" -#: ../rules/base.xml.in.h:520 -msgid "Pro" -msgstr "Pro" - -#: ../rules/base.xml.in.h:521 -msgid "Pro Keypad" -msgstr "Vùng phÃm Pro" - -#: ../rules/base.xml.in.h:522 +#: ../rules/base.xml.in.h:527 msgid "Probhat" msgstr "Probhat" -#: ../rules/base.xml.in.h:523 +#: ../rules/base.xml.in.h:528 msgid "Programmer Dvorak" msgstr "Programmer Dvorak" -#: ../rules/base.xml.in.h:524 +#: ../rules/base.xml.in.h:529 msgid "Propeller Voyager (KTEZ-1000)" msgstr "Propeller Voyager (KTEZ-1000)" -#: ../rules/base.xml.in.h:525 +#: ../rules/base.xml.in.h:530 msgid "Prt" msgstr "Prt" -#: ../rules/base.xml.in.h:526 +#: ../rules/base.xml.in.h:531 msgid "QTronix Scorpius 98N+" msgstr "QTronix Scorpius 98N+" -#: ../rules/base.xml.in.h:527 +#: ../rules/base.xml.in.h:532 msgid "Right Alt" msgstr "Alt phải" -#: ../rules/base.xml.in.h:528 +#: ../rules/base.xml.in.h:533 msgid "Right Alt (while pressed)" msgstr "Alt phải (trong khi bấm)" -#: ../rules/base.xml.in.h:529 +#: ../rules/base.xml.in.h:534 msgid "Right Alt key never chooses 3rd level" msgstr "PhÃm Alt bên phải không bao giá» chá»n báºc thứ 3" -#: ../rules/base.xml.in.h:530 +#: ../rules/base.xml.in.h:535 msgid "Right Alt, Shift+Right Alt key is Multi_Key" msgstr "Alt phải, phÃm Shift+Right Alt là Multi_Key" -#: ../rules/base.xml.in.h:531 +#: ../rules/base.xml.in.h:536 msgid "Right Ctrl" msgstr "Ctrl phải" -#: ../rules/base.xml.in.h:532 +#: ../rules/base.xml.in.h:537 msgid "Right Ctrl (while pressed)" msgstr "Ctrl phải (trong khi bấm)" -#: ../rules/base.xml.in.h:533 +#: ../rules/base.xml.in.h:538 msgid "Right Ctrl as Right Alt" msgstr "Ctrl phải là m Alt phải" -#: ../rules/base.xml.in.h:534 +#: ../rules/base.xml.in.h:539 msgid "Right Shift" msgstr "Shift phải" -#: ../rules/base.xml.in.h:535 +#: ../rules/base.xml.in.h:540 msgid "Right Win" msgstr "Win phải" -#: ../rules/base.xml.in.h:536 +#: ../rules/base.xml.in.h:541 msgid "Right Win (while pressed)" msgstr "Win phải (trong khi bấm)" -#: ../rules/base.xml.in.h:537 +#: ../rules/base.xml.in.h:542 msgid "Right hand" msgstr "Thuáºn tay phải" -#: ../rules/base.xml.in.h:538 +#: ../rules/base.xml.in.h:543 msgid "Right handed Dvorak" msgstr "Dvorak thuáºn tay phải" -#: ../rules/base.xml.in.h:539 +#: ../rules/base.xml.in.h:544 msgid "Romania" msgstr "Rô-ma-ni" -#: ../rules/base.xml.in.h:540 +#: ../rules/base.xml.in.h:545 msgid "Romanian keyboard with German letters" msgstr "Bà n phÃm Rô-ma-ni vá»›i các chữ cái Äức" -#: ../rules/base.xml.in.h:541 +#: ../rules/base.xml.in.h:546 msgid "Romanian keyboard with German letters, eliminate dead keys" msgstr "Bà n phÃm Rô-ma-ni vá»›i các chữ cái Äức, các phÃm chết loại trừ" -#: ../rules/base.xml.in.h:542 +#: ../rules/base.xml.in.h:547 msgid "Rou" msgstr "Rou" -#: ../rules/base.xml.in.h:543 +#: ../rules/base.xml.in.h:548 msgid "Rus" msgstr "Nga" -#: ../rules/base.xml.in.h:544 +#: ../rules/base.xml.in.h:549 msgid "Russia" msgstr "Nga" -#: ../rules/base.xml.in.h:545 +#: ../rules/base.xml.in.h:550 msgid "Russian" msgstr "Nga" -#: ../rules/base.xml.in.h:546 +#: ../rules/base.xml.in.h:551 msgid "Russian phonetic" msgstr "Nga ngữ âm" -#: ../rules/base.xml.in.h:547 +#: ../rules/base.xml.in.h:552 msgid "Russian phonetic Dvorak" msgstr "Nga ngữ âm Dvorak" -#: ../rules/base.xml.in.h:548 +#: ../rules/base.xml.in.h:553 msgid "Russian phonetic, eliminate dead keys" msgstr "Nga ngữ âm, phÃm chết loại trừ" -#: ../rules/base.xml.in.h:549 +#: ../rules/base.xml.in.h:554 msgid "Russian with Kazakh" msgstr "Nga có Kha-xắc" -#: ../rules/base.xml.in.h:550 +#: ../rules/base.xml.in.h:555 msgid "SILVERCREST Multimedia Wireless Keyboard" msgstr "Bà n phÃm Không dây Äa phương tiện SILVERCREST" -#: ../rules/base.xml.in.h:551 +#: ../rules/base.xml.in.h:556 msgid "SK-1300" msgstr "SK-1300" -#: ../rules/base.xml.in.h:552 +#: ../rules/base.xml.in.h:557 msgid "SK-2500" msgstr "SK-2500" -#: ../rules/base.xml.in.h:553 +#: ../rules/base.xml.in.h:558 msgid "SK-6200" msgstr "SK-6200" -#: ../rules/base.xml.in.h:554 +#: ../rules/base.xml.in.h:559 msgid "SK-7100" msgstr "SK-7100" -#: ../rules/base.xml.in.h:555 +#: ../rules/base.xml.in.h:560 ../rules/base.extras.xml.in.h:7 msgid "SRB" msgstr "SRB" -#: ../rules/base.xml.in.h:556 +#: ../rules/base.xml.in.h:561 msgid "SVEN Ergonomic 2500" msgstr "SVEN Ergonomic 2500" -#: ../rules/base.xml.in.h:557 +#: ../rules/base.xml.in.h:562 msgid "SVEN Slim 303" msgstr "SVEN Slim 303" -#: ../rules/base.xml.in.h:558 +#: ../rules/base.xml.in.h:563 msgid "Samsung SDM 4500P" msgstr "Samsung SDM 4500P" -#: ../rules/base.xml.in.h:559 +#: ../rules/base.xml.in.h:564 msgid "Samsung SDM 4510P" msgstr "Samsung SDM 4510P" -#: ../rules/base.xml.in.h:560 +#: ../rules/base.xml.in.h:565 msgid "Scroll Lock" msgstr "Scroll Lock" -#: ../rules/base.xml.in.h:561 +#: ../rules/base.xml.in.h:566 msgid "ScrollLock" msgstr "ScrollLock" -#: ../rules/base.xml.in.h:562 +#: ../rules/base.xml.in.h:567 msgid "Secwepemctsin" msgstr "Secwepemctsin" -#: ../rules/base.xml.in.h:563 +#: ../rules/base.xml.in.h:568 msgid "Semi-colon on third level" msgstr "Dấu chấm phẩy ở cấp ba" -#: ../rules/base.xml.in.h:564 +#: ../rules/base.xml.in.h:569 ../rules/base.extras.xml.in.h:8 msgid "Serbia" msgstr "Xéc-bi" -#: ../rules/base.xml.in.h:565 +#: ../rules/base.xml.in.h:570 msgid "Shift cancels CapsLock" msgstr "Shift thôi CapsLock" -#: ../rules/base.xml.in.h:566 +#: ../rules/base.xml.in.h:571 msgid "Shift does not cancel NumLock, chooses 3d level instead" msgstr "Shift không thôi Numlock, chá»n cấp ba để thay thế" -#: ../rules/base.xml.in.h:567 +#: ../rules/base.xml.in.h:572 msgid "Shift with numeric keypad keys works as in MS Windows" msgstr "Shift vá»›i các phÃm vùng số là m việc như trong MS Windows" -#: ../rules/base.xml.in.h:568 +#: ../rules/base.xml.in.h:573 msgid "Shift+CapsLock" msgstr "Shift+CapsLock" -#: ../rules/base.xml.in.h:569 +#: ../rules/base.xml.in.h:574 msgid "Simple" msgstr "ÄÆ¡n giản" -#: ../rules/base.xml.in.h:570 +#: ../rules/base.xml.in.h:575 msgid "Slovakia" msgstr "Xlô-vác" -#: ../rules/base.xml.in.h:571 +#: ../rules/base.xml.in.h:576 msgid "Slovenia" msgstr "Xlô-ven" -#: ../rules/base.xml.in.h:572 +#: ../rules/base.xml.in.h:577 msgid "South Africa" msgstr "Nam Phi" -#: ../rules/base.xml.in.h:573 +#: ../rules/base.xml.in.h:578 msgid "Southern Uzbek" msgstr "Nam Ux-béc" -#: ../rules/base.xml.in.h:574 +#: ../rules/base.xml.in.h:579 msgid "Spain" msgstr "Tây Ban Nha" -#: ../rules/base.xml.in.h:575 +#: ../rules/base.xml.in.h:580 msgid "Special keys (Ctrl+Alt+<key>) handled in a server" msgstr "Các ký tá»± đặc biệt (Ctrl+Alt+<key>) được xá» lý bằng má»™t trình phục vụ" -#: ../rules/base.xml.in.h:576 +#: ../rules/base.xml.in.h:581 msgid "SrL" msgstr "SrL" -#: ../rules/base.xml.in.h:577 +#: ../rules/base.xml.in.h:582 msgid "Sri Lanka" msgstr "TÃch-lan" -#: ../rules/base.xml.in.h:578 +#: ../rules/base.xml.in.h:583 msgid "Standard" msgstr "Tiêu chuẩn" -#: ../rules/base.xml.in.h:579 +#: ../rules/base.xml.in.h:584 msgid "Standard (Cedilla)" msgstr "Chuẩn (dấu móc dưới)" -#: ../rules/base.xml.in.h:580 -msgid "Standard Phonetic" -msgstr "Ngữ âm tiêu chuẩn" - #. RSTU 2019-91 -#: ../rules/base.xml.in.h:582 +#: ../rules/base.xml.in.h:586 msgid "Standard RSTU" msgstr "RSTU chuẩn" #. RSTU 2019-91 -#: ../rules/base.xml.in.h:584 +#: ../rules/base.xml.in.h:588 msgid "Standard RSTU on Russian layout" msgstr "RSTU chuẩn trên bố trà tiếng Nga" -#: ../rules/base.xml.in.h:585 +#: ../rules/base.xml.in.h:589 msgid "Sun Type 5/6" msgstr "Sun kiểu 5/6" -#: ../rules/base.xml.in.h:586 +#: ../rules/base.xml.in.h:590 msgid "Sun dead keys" msgstr "PhÃm chết Sun" -#: ../rules/base.xml.in.h:587 +#: ../rules/base.xml.in.h:591 msgid "Super Power Multimedia Keyboard" msgstr "Bà n phÃm Phim nhạc Siêu Năng Lá»±c" -#: ../rules/base.xml.in.h:588 +#: ../rules/base.xml.in.h:592 msgid "Svdvorak" msgstr "Svdvorak" -#: ../rules/base.xml.in.h:589 +#: ../rules/base.xml.in.h:593 msgid "Svk" msgstr "Svk" -#: ../rules/base.xml.in.h:590 +#: ../rules/base.xml.in.h:594 msgid "Svn" msgstr "Svn" -#: ../rules/base.xml.in.h:591 +#: ../rules/base.xml.in.h:595 msgid "Swap Ctrl and CapsLock" msgstr "Trao đổi Ctrl và CapsLock" -#: ../rules/base.xml.in.h:592 +#: ../rules/base.xml.in.h:596 msgid "Swap ESC and CapsLock" msgstr "Trao đổi ESC và CapsLock" -#: ../rules/base.xml.in.h:593 +#: ../rules/base.xml.in.h:597 msgid "Swe" msgstr "Swe" -#: ../rules/base.xml.in.h:594 +#: ../rules/base.xml.in.h:598 msgid "Sweden" msgstr "Thuỵ Äiển" -#: ../rules/base.xml.in.h:595 +#: ../rules/base.xml.in.h:599 msgid "Switzerland" msgstr "Thuỵ SÄ©" -#: ../rules/base.xml.in.h:596 +#: ../rules/base.xml.in.h:600 msgid "Symplon PaceBook (tablet PC)" msgstr "Symplon PaceBook (tablet PC)" -#: ../rules/base.xml.in.h:597 +#: ../rules/base.xml.in.h:601 msgid "Syr" msgstr "Syr" -#: ../rules/base.xml.in.h:598 +#: ../rules/base.xml.in.h:602 msgid "Syria" msgstr "Xy-ri" -#: ../rules/base.xml.in.h:599 +#: ../rules/base.xml.in.h:603 msgid "Syriac" msgstr "Xi-ri" -#: ../rules/base.xml.in.h:600 +#: ../rules/base.xml.in.h:604 msgid "Syriac phonetic" msgstr "Xy-ri ngữ âm" -#: ../rules/base.xml.in.h:601 +#: ../rules/base.xml.in.h:605 msgid "TIS-820.2538" msgstr "TIS-820.2538" -#: ../rules/base.xml.in.h:602 +#: ../rules/base.xml.in.h:606 msgid "Tajikistan" msgstr "Ta-gikh-x-tanh" -#: ../rules/base.xml.in.h:603 +#: ../rules/base.xml.in.h:607 msgid "Tamil" msgstr "Ta-min" -#: ../rules/base.xml.in.h:604 +#: ../rules/base.xml.in.h:608 msgid "Tamil TAB Typewriter" msgstr "Ta-min TAB máy chữ" -#: ../rules/base.xml.in.h:605 +#: ../rules/base.xml.in.h:609 msgid "Tamil TSCII Typewriter" msgstr "Ta-min TSCII máy chữ" -#: ../rules/base.xml.in.h:606 +#: ../rules/base.xml.in.h:610 msgid "Tamil Unicode" msgstr "Ta-min Unicode" -#: ../rules/base.xml.in.h:607 +#: ../rules/base.xml.in.h:611 msgid "Targa Visionary 811" msgstr "Targa Visionary 811" -#: ../rules/base.xml.in.h:608 +#: ../rules/base.xml.in.h:612 msgid "Tatar" msgstr "Ta-tă" -#: ../rules/base.xml.in.h:609 +#: ../rules/base.xml.in.h:613 msgid "Telugu" msgstr "Te-lu-gu" -#: ../rules/base.xml.in.h:610 +#: ../rules/base.xml.in.h:614 msgid "Tha" msgstr "Tha" -#: ../rules/base.xml.in.h:611 +#: ../rules/base.xml.in.h:615 msgid "Thailand" msgstr "Thái Lan" -#: ../rules/base.xml.in.h:612 +#: ../rules/base.xml.in.h:616 msgid "Tibetan" msgstr "Tây Tạng" -#: ../rules/base.xml.in.h:613 +#: ../rules/base.xml.in.h:617 msgid "Tibetan (with ASCII numerals)" msgstr "Tây Tạng (có chữ số ASCII)" -#: ../rules/base.xml.in.h:614 +#: ../rules/base.xml.in.h:618 msgid "Tifinagh" msgstr "Ti-phi-nac" -#: ../rules/base.xml.in.h:615 +#: ../rules/base.xml.in.h:619 msgid "Tifinagh Alternative" msgstr "Ti-phi-nac tương đương" -#: ../rules/base.xml.in.h:616 +#: ../rules/base.xml.in.h:620 msgid "Tifinagh Alternative Phonetic" msgstr "Ti-phi-nac ngữ âm tương đương" -#: ../rules/base.xml.in.h:617 +#: ../rules/base.xml.in.h:621 msgid "Tifinagh Extended" msgstr "Ti-phi-nac mở rá»™ng" -#: ../rules/base.xml.in.h:618 +#: ../rules/base.xml.in.h:622 msgid "Tifinagh Extended Phonetic" msgstr "Ti-phi-nac mở rá»™ng ngữ âm" -#: ../rules/base.xml.in.h:619 +#: ../rules/base.xml.in.h:623 msgid "Tifinagh Phonetic" msgstr "Ti-phi-nac ngữ âm" -#: ../rules/base.xml.in.h:620 +#: ../rules/base.xml.in.h:624 msgid "Tilde (~) variant" msgstr "Phương án dấu sóng (~)" -#: ../rules/base.xml.in.h:621 +#: ../rules/base.xml.in.h:625 msgid "Tjk" msgstr "Tjk" -#: ../rules/base.xml.in.h:622 +#: ../rules/base.xml.in.h:626 msgid "To the corresponding key in a Dvorak keyboard." msgstr "Tá»›i phÃm tương ứng trên má»™t bà n phÃm Dvorak." -#: ../rules/base.xml.in.h:623 +#: ../rules/base.xml.in.h:627 msgid "To the corresponding key in a Qwerty keyboard." msgstr "Tá»›i phÃm tương ứng trên má»™t bà n phÃm Qwerty." -#: ../rules/base.xml.in.h:624 +#: ../rules/base.xml.in.h:628 msgid "Toshiba Satellite S3000" msgstr "Toshiba Satellite S3000" -#: ../rules/base.xml.in.h:625 -msgid "Traditional Phonetic" +#: ../rules/base.xml.in.h:629 +msgid "Traditional phonetic" msgstr "Ngữ âm truyá»n thống" -#: ../rules/base.xml.in.h:626 +#: ../rules/base.xml.in.h:630 msgid "Trust Direct Access Keyboard" msgstr "Bà n phÃm Truy cáºp Thẳng Tin tưởng" -#: ../rules/base.xml.in.h:627 +#: ../rules/base.xml.in.h:631 msgid "Trust Slimline" msgstr "Trust Slimline" -#: ../rules/base.xml.in.h:628 +#: ../rules/base.xml.in.h:632 msgid "Trust Wireless Keyboard Classic" msgstr "Bà n PhÃm Cổ Ä‘iển Không dây Tin tưởng" -#: ../rules/base.xml.in.h:629 +#: ../rules/base.xml.in.h:633 msgid "Tur" msgstr "Tur" -#: ../rules/base.xml.in.h:630 +#: ../rules/base.xml.in.h:634 msgid "Turkey" msgstr "Thổ NhÄ© Kỳ" -#: ../rules/base.xml.in.h:631 +#: ../rules/base.xml.in.h:635 msgid "Turkmenistan" msgstr "Thổ-kh-me-ni-x-tanh" -#: ../rules/base.xml.in.h:632 +#: ../rules/base.xml.in.h:636 msgid "Typewriter" msgstr "Máy chữ" -#: ../rules/base.xml.in.h:633 +#: ../rules/base.xml.in.h:637 msgid "UCW layout (accented letters only)" msgstr "Bố trà UCW (chỉ chữ có dấu)" -#: ../rules/base.xml.in.h:634 +#: ../rules/base.xml.in.h:638 msgid "US keyboard with Bosnian digraphs" msgstr "Bà n phÃm Mỹ vá»›i các chữ ghép Bo-x-ni-a" -#: ../rules/base.xml.in.h:635 +#: ../rules/base.xml.in.h:639 msgid "US keyboard with Bosnian letters" msgstr "Bà n phÃm Mỹ vá»›i các chữ cái Bo-x-ni-a" -#: ../rules/base.xml.in.h:636 +#: ../rules/base.xml.in.h:640 msgid "US keyboard with Croatian digraphs" msgstr "Bà n phÃm Mỹ vá»›i các chữ ghép Cợ-rô-a-ti-a" -#: ../rules/base.xml.in.h:637 +#: ../rules/base.xml.in.h:641 msgid "US keyboard with Croatian letters" msgstr "Bà n phÃm Mỹ vá»›i các chữ cái Croát-chi-a" -#: ../rules/base.xml.in.h:638 +#: ../rules/base.xml.in.h:642 msgid "US keyboard with Estonian letters" msgstr "Bà n phÃm Mỹ vá»›i các chữ cái E-x-tô-ni-a" -#: ../rules/base.xml.in.h:639 +#: ../rules/base.xml.in.h:643 +msgid "US keyboard with Italian letters" +msgstr "Bà n phÃm Mỹ vá»›i các chữ cái Ã" + +#: ../rules/base.xml.in.h:644 msgid "US keyboard with Lithuanian letters" msgstr "Bà n phÃm Mỹ vá»›i các chữ cái Li-tu-a-nia" -#: ../rules/base.xml.in.h:640 +#: ../rules/base.xml.in.h:645 msgid "US keyboard with Slovenian letters" msgstr "Bà n phÃm Mỹ vá»›i các chữ cái Xlô-ven" -#: ../rules/base.xml.in.h:641 +#: ../rules/base.xml.in.h:646 ../rules/base.extras.xml.in.h:9 msgid "USA" msgstr "Mỹ" -#: ../rules/base.xml.in.h:642 +#: ../rules/base.xml.in.h:647 msgid "Udmurt" msgstr "U-Ä‘-muổt" -#: ../rules/base.xml.in.h:643 +#: ../rules/base.xml.in.h:648 msgid "Ukr" msgstr "Ukr" -#: ../rules/base.xml.in.h:644 +#: ../rules/base.xml.in.h:649 msgid "Ukraine" msgstr "U-cợ-rainh" -#: ../rules/base.xml.in.h:645 +#: ../rules/base.xml.in.h:650 msgid "Unicode additions (arrows and math operators)" msgstr "Phần thêm Unicode (các mÅ©i tên và toán tá» toán há»c)" -#: ../rules/base.xml.in.h:646 +#: ../rules/base.xml.in.h:651 msgid "Unicode additions (arrows and math operators). Math operators on default level" msgstr "Phần thêm Unicode (các mÅ©i tên và toán tá» toán há»c). Báºc mặc định thì nháºp các toán tá» toán há»c." -#: ../rules/base.xml.in.h:647 +#: ../rules/base.xml.in.h:652 msgid "UnicodeExpert" msgstr "Unicode Chuyên môn" -#: ../rules/base.xml.in.h:648 +#: ../rules/base.xml.in.h:653 msgid "United Kingdom" msgstr "Vương Quốc Anh" -#: ../rules/base.xml.in.h:649 +#: ../rules/base.xml.in.h:654 msgid "Unitek KB-1925" msgstr "Unitek KB-1925" -#: ../rules/base.xml.in.h:650 +#: ../rules/base.xml.in.h:655 msgid "Urdu, Alternative phonetic" msgstr "Urdu, Ngữ âm xen kẽ" -#: ../rules/base.xml.in.h:651 +#: ../rules/base.xml.in.h:656 msgid "Urdu, Phonetic" msgstr "Urdu, Ngữ âm" -#: ../rules/base.xml.in.h:652 +#: ../rules/base.xml.in.h:657 msgid "Urdu, Winkeys" msgstr "Urdu, PhÃm Win" -#: ../rules/base.xml.in.h:653 +#: ../rules/base.xml.in.h:658 msgid "Use Bosnian digraphs" msgstr "Dùng chữ ghép Bo-x-ni-a" -#: ../rules/base.xml.in.h:654 +#: ../rules/base.xml.in.h:659 msgid "Use Croatian digraphs" msgstr "Dùng chữ ghép Cợ-rô-a-ti-a" -#: ../rules/base.xml.in.h:655 +#: ../rules/base.xml.in.h:660 msgid "Use guillemets for quotes" msgstr "Dùng « chim uria » là m dấu trÃch dẫn" -#: ../rules/base.xml.in.h:656 +#: ../rules/base.xml.in.h:661 msgid "Use keyboard LED to show alternative layout" msgstr "Sá» dụng đèn bà n phÃm để chỉ ra bố trà xen kẽ" -#: ../rules/base.xml.in.h:657 +#: ../rules/base.xml.in.h:662 msgid "Using space key to input non-breakable space character" msgstr "Dùng phÃm dà i để nháºp ký tá»± dấu cách không thể ngắt" -#: ../rules/base.xml.in.h:658 +#: ../rules/base.xml.in.h:663 msgid "Usual space at any level" msgstr "Dấu cách bình thưá»ng ở má»i báºc" -#: ../rules/base.xml.in.h:659 +#: ../rules/base.xml.in.h:664 msgid "Uzb" msgstr "Uzb" -#: ../rules/base.xml.in.h:660 +#: ../rules/base.xml.in.h:665 msgid "Uzbekistan" msgstr "Uz-be-khi-xtanh" -#: ../rules/base.xml.in.h:661 +#: ../rules/base.xml.in.h:666 msgid "Vietnam" msgstr "Việt Nam" -#: ../rules/base.xml.in.h:662 +#: ../rules/base.xml.in.h:667 msgid "ViewSonic KU-306 Internet Keyboard" msgstr "Bà n phÃm Internet ViewSonic KU-306" -#: ../rules/base.xml.in.h:663 +#: ../rules/base.xml.in.h:668 msgid "Vnm" msgstr "Vnm" -#: ../rules/base.xml.in.h:664 +#: ../rules/base.xml.in.h:669 msgid "Wang 724 keypad with unicode additions (arrows and math operators)" msgstr "Vùng phÃm Wang 724 có phần thêm Unicode (các mÅ©i tên và toán tá» toán há»c)" -#: ../rules/base.xml.in.h:665 +#: ../rules/base.xml.in.h:670 msgid "Wang 724 keypad with unicode additions (arrows and math operators). Math operators on default level" msgstr "Vùng phÃm Wang 724 có phần thêm Unicode (các mÅ©i tên và toán tá» toán há»c). Mặc định thì nháºp toán tá» toán há»c." -#: ../rules/base.xml.in.h:666 +#: ../rules/base.xml.in.h:671 msgid "Wang model 724 azerty" msgstr "Wang mô hình 724 azerty" -#: ../rules/base.xml.in.h:667 +#: ../rules/base.xml.in.h:672 msgid "Western" msgstr "Phương Tây" -#: ../rules/base.xml.in.h:668 +#: ../rules/base.xml.in.h:673 msgid "Winbook Model XP5" msgstr "Winbook kiểu mẫu XP5" -#: ../rules/base.xml.in.h:669 +#: ../rules/base.xml.in.h:674 msgid "Winkeys" msgstr "PhÃm Win" -#: ../rules/base.xml.in.h:670 +#: ../rules/base.xml.in.h:675 msgid "With <\\|> key" msgstr "Vá»›i phÃm <\\|>" -#: ../rules/base.xml.in.h:671 +#: ../rules/base.xml.in.h:676 msgid "With EuroSign on 5" msgstr "Thêm ký hiệu đồng Euro và o phÃm 5." -#: ../rules/base.xml.in.h:672 +#: ../rules/base.xml.in.h:677 msgid "With guillemets" msgstr "Vá»›i « chim uria »" -#: ../rules/base.xml.in.h:673 +#: ../rules/base.xml.in.h:678 msgid "Yahoo! Internet Keyboard" msgstr "Bà n phÃm Internet Yahoo!" -#: ../rules/base.xml.in.h:674 +#: ../rules/base.xml.in.h:679 msgid "Yakut" msgstr "Ya-khú-th" -#: ../rules/base.xml.in.h:675 +#: ../rules/base.xml.in.h:680 msgid "Yoruba" msgstr "Yoa-ru-ba" -#: ../rules/base.xml.in.h:676 +#: ../rules/base.xml.in.h:681 msgid "Z and ZHE swapped" msgstr "Äổi chá»— Z và ZHE" -#: ../rules/base.xml.in.h:677 +#: ../rules/base.xml.in.h:682 msgid "Zar" msgstr "Zar" -#: ../rules/base.xml.in.h:678 +#: ../rules/base.xml.in.h:683 msgid "azerty" msgstr "azerty" -#: ../rules/base.xml.in.h:679 +#: ../rules/base.xml.in.h:684 msgid "azerty/digits" msgstr "azerty/chữ số" -#: ../rules/base.xml.in.h:680 +#: ../rules/base.xml.in.h:685 msgid "digits" msgstr "chữ số" -#: ../rules/base.xml.in.h:681 +#: ../rules/base.xml.in.h:686 msgid "displaced semicolon and quote (obsolete)" msgstr "dấu chấm phẩy và dấu trÃch dẫn bị dịch (quá cÅ©)" -#: ../rules/base.xml.in.h:682 +#: ../rules/base.xml.in.h:687 msgid "lyx" msgstr "lyx" -#: ../rules/base.xml.in.h:683 +#: ../rules/base.xml.in.h:688 msgid "qwerty" msgstr "qwerty" -#: ../rules/base.xml.in.h:684 +#: ../rules/base.xml.in.h:689 msgid "qwerty, extended Backslash" msgstr "qwerty, Gạch ngược mở rá»™ng" -#: ../rules/base.xml.in.h:685 +#: ../rules/base.xml.in.h:690 msgid "qwerty/digits" msgstr "qwerty/chữ số" -#: ../rules/base.xml.in.h:686 +#: ../rules/base.xml.in.h:691 msgid "qwertz" msgstr "qwertz" + +#: ../rules/base.extras.xml.in.h:1 +msgid "APL" +msgstr "APL" + +#: ../rules/base.extras.xml.in.h:2 +msgid "Atsina" +msgstr "Ãt-xi-na" + +#: ../rules/base.extras.xml.in.h:3 +msgid "Combining accents instead of dead keys" +msgstr "Tổ hợp dấu phụ thay cho phÃm chết" + +#: ../rules/base.extras.xml.in.h:4 +msgid "Couer D'alene Salish" +msgstr "Couer D'alene Salish" + +#: ../rules/base.extras.xml.in.h:5 +msgid "International (AltGr Unicode combining)" +msgstr "Quốc tế (tổ hợp Unicode AltGr)" + +#: ../rules/base.extras.xml.in.h:6 +msgid "International (AltGr Unicode combining, alternative)" +msgstr "Quốc tế (tổ hợp Unicode AltGr, thay thế)" diff --git a/xorg-server/xkbdata.src/symbols/inet b/xorg-server/xkbdata.src/symbols/inet index 7300e76da..f6cd6ac91 100644 --- a/xorg-server/xkbdata.src/symbols/inet +++ b/xorg-server/xkbdata.src/symbols/inet @@ -119,6 +119,7 @@ xkb_symbols "evdev" { key <HNGL> { [ Hangul ] }; key <HJCV> { [ Hangul_Hanja ] }; + key <FK22> { [ XF86TouchpadToggle ] }; // key <I120> { [ ] }; // KEY_MACRO key <I126> { [ plusminus ] }; diff --git a/xorg-server/xkbdata.src/symbols/symbols.dir b/xorg-server/xkbdata.src/symbols/symbols.dir index 79681dbee..2479c1640 100644 --- a/xorg-server/xkbdata.src/symbols/symbols.dir +++ b/xorg-server/xkbdata.src/symbols/symbols.dir @@ -1,204 +1,129 @@ --dp----- a------- am(basic) ---p----- a------- am(olpc) --------- -------- am(phonetic) ---p----- a------- am(phonetic-alt) ---p----- a------- am(eastern) ---p----- a------- am(western) ---p----- a------- am(eastern-alt) --dp----- -m------ terminate(ctrl_alt_bksp) --dp----- a------- fr(basic) ---p----- a------- fr(Sundeadkeys) ---p----- a------- fr(sundeadkeys) ---p----- a------- fr(nodeadkeys) ---p----- a------- fr(oss) ---p----- a------- fr(oss_latin9) ---p----- a------- fr(oss_Sundeadkeys) ---p----- a------- fr(oss_sundeadkeys) ---p----- a------- fr(oss_nodeadkeys) ---p----- a------- fr(latin9) ---p----- a------- fr(latin9_Sundeadkeys) ---p----- a------- fr(latin9_sundeadkeys) ---p----- a------- fr(latin9_nodeadkeys) ---p----- a------- fr(bepo) ---p----- a------- fr(bepo_latin9) ---p----- am------ fr(dvorak) ---p----- a------- fr(bre) ---p----- a------- fr(oci) ---p----- a------- fr(mac) ---p----- a------- fr(geo) +-dp----- a------- mn(basic) +--p----- a------- mn(olpc) +--p----- -m------ compose(ralt) +--p----- -m------ compose(lwin) +--p----- -m------ compose(rwin) +--p----- -m------ compose(menu) +--p----- -m------ compose(rctrl) +--p----- -m------ compose(caps) +--p----- -m------ compose(102) +-d------ -------- de(basic) +--p----- a------- de(nodeadkeys) +--p----- a------- de(deadgraveacute) +--p----- a------- de(deadacute) +--p----- a------- de(ro) +--p----- a------- de(ro_nodeadkeys) +--p----- a------- de(dvorak) +--p----- a------- de(Sundeadkeys) +--p----- a------- de(sundeadkeys) +--p----- amk----- de(neo) +--p----- a------- de(mac) +--p----- a------- de(mac_nodeadkeys) +--p----- a------- de(dsb) +--p----- a------- de(dsb_qwertz) +--p----- a------- de(qwerty) +-------- -------- extras/rs(combiningkeys) +--p----- a------- extras/us(intl-unicode) +--p----- a------- extras/us(alt-intl-unicode) +--p----- a------- extras/us(ats) +--p----- a------- extras/us(crd) +--p----- am------ extras/apl(common) +--p----- am------ extras/apl(unified) +-dp----- am------ extras/apl(sax) +--p----- am------ extras/apl(apl2) +--p----- am------ extras/apl(aplplusII) +--p----- am------ extras/apl(aplx) +-dp----- a------- il(basic) +--p----- a------- il(lyx) +--p----- a------- il(phonetic) +--p----- a------- il(biblical) +-dp----- a------- ro(basic) +--p----- a------- ro(cedilla) +--p----- a------- ro(std) +--p----- a------- ro(std_cedilla) +--p----- a------- ro(winkeys) +--p----- -------- ro(crh_f) +--p----- -------- ro(crh_alt) +--p----- -------- ro(crh_dobruca1) +--p----- -------- ro(crh_dobruca2) +--p----- -------- eurosign(e) +--p----- -------- eurosign(2) +--p----- -------- eurosign(4) +--p----- -------- eurosign(5) +-dp----- a------- me(basic) +--p----- a------- me(cyrillic) +--p----- a------- me(cyrillicyz) +--p----- a------- me(latinunicode) +--p----- a------- me(latinyz) +--p----- a------- me(latinunicodeyz) +-------- -------- me(cyrillicalternatequotes) +-------- -------- me(latinalternatequotes) +-dp----- a------- mm(basic) +-dp----- a------- ma(arabic) +--p----- a------- ma(french) +--p----- a------- ma(tifinagh) +--p----- a------- ma(tifinagh-phonetic) +--p----- a------- ma(tifinagh-extended) +--p----- a------- ma(tifinagh-extended-phonetic) +--p----- a------- ma(tifinagh-alt) +--p----- a------- ma(tifinagh-alt-phonetic) +-dp----- a------- fi(kotoistus) +--p----- a------- fi(classic) +h-p----- a------- fi(fi) +--p----- a------- fi(nodeadkeys) +-------- -------- fi(smi) +--p----- a------- fi(mac) +-dp----- a------- bt(basic) +-dp----- a------- ie(basic) +--p----- a------- ie(CloGaelach) +--p----- a------- ie(UnicodeExpert) +--p----- a------- ie(ogam) +--p----- a------- ie(ogam_is434) +-dp----- a------- be(basic) +--p----- a------- be(oss) +--p----- a------- be(oss_frbe) +--p----- a------- be(oss_latin9) +--p----- a------- be(oss_Sundeadkeys) +--p----- a------- be(oss_sundeadkeys) +--p----- a------- be(iso-alternate) +--p----- a------- be(sundeadkeys) +--p----- a------- be(Sundeadkeys) +--p----- a------- be(nodeadkeys) +--p----- a------- be(wang) +--p----- --kf---- srvr_ctrl(xfree86) +--p----- --k----- srvr_ctrl(stdkeypad) +--p----- ---f---- srvr_ctrl(fkey2vt) +--p----- --kf---- srvr_ctrl(no_srvr_keys) +-dp----- a------- ba(basic) +--p----- a------- ba(us) +--p----- a------- ba(alternatequotes) +--p----- a------- ba(unicode) +--p----- a------- ba(unicodeus) -dp----- a------- ng(basic) --p----- a------- ng(yoruba) --p----- a------- ng(igbo) --p----- a------- ng(hausa) --p----- a------- ng(olpc) --dp----- a------- np(basic) ---p----- a------- np(olpc) --dp----- a------- nl(basic) ---p----- a------- nl(std) ---p----- a------- nl(Sundeadkeys) ---p----- a------- nl(sundeadkeys) ---p----- a------- nl(mac) --dp----- a------- ad(basic) --dp----- a------- ua(unicode) ---p----- a------- ua(legacy) ---p----- a------- ua(winkeys) ---p----- a------- ua(typewriter) ---p----- a------- ua(phonetic) ---p----- a------- ua(rstu) ---p----- a------- ua(rstu_ru) ---p----- a------- ua(homophonic) ---p----- -------- ua(crh) ---p----- -------- ua(crh_f) ---p----- -------- ua(crh_alt) --dp----- a------- rs(basic) ---p----- a------- rs(latin) ---p----- a------- rs(yz) -h-p----- a------- rs(common) -h-p----- a------- rs(cyralpha) -h-p----- a------- rs(latalpha) -h-p----- a------- rs(twoletter) -h-p----- a------- rs(latlevel3) -h-p----- a------- rs(cyrlevel3) ---p----- a------- rs(latinunicode) ---p----- a------- rs(latinyz) ---p----- a------- rs(latinunicodeyz) --------- -------- rs(alternatequotes) --------- -------- rs(latinalternatequotes) --dp----- a------- cd(basic) --dp----- a------- epo(basic) ---p----- a------- epo(legacy) ---p----- -------- epo(qwerty) ---p----- -------- epo(dvorak) --dp----- a------- tj(basic) --------- -------- tj(legacy) -dp----- a------- af(basic) --p----- a------- af(ps) --p----- a------- af(uz) --p----- a------- af(olpc-ps) --p----- a------- af(olpc-fa) --p----- a------- af(olpc-uz) --dp----- a------- ch(basic) ---p----- a------- ch(de) ---p----- a------- ch(de_Sundeadkeys) ---p----- a------- ch(de_sundeadkeys) ---p----- a------- ch(de_nodeadkeys) ---p----- a------- ch(fr) ---p----- a------- ch(fr_Sundeadkeys) ---p----- a------- ch(fr_sundeadkeys) ---p----- a------- ch(fr_nodeadkeys) ---p----- a------- ch(de_mac) ---p----- a------- ch(fr_mac) --dp----- am------ pc(pc105) -h-p----- a------- pc(function) -h-p----- a------- pc(editing) --dp----- a------- pl(basic) ---p----- a------- pl(qwertz) ---p----- a------- pl(dvorak) ---p----- a------- pl(dvorak_quotes) ---p----- a------- pl(dvorak_altquotes) ---p----- a------- pl(csb) ---p----- a------- pl(ru_phonetic_dvorak) --dp----- a------- th(basic) ---p----- a------- th(pat) ---p----- a------- th(tis) ---p----- a------- th(olpc) --dp----- a------- no(basic) ---p----- a------- no(nodeadkeys) ---p----- a------- no(dvorak) ---p----- a------- no(smi) ---p----- a------- no(smi_nodeadkeys) ---p----- a------- no(mac) ---p----- a------- no(mac_nodeadkeys) --dp----- a------- iq(basic) ---p----- a------- iq(ku) ---p----- a------- iq(ku_f) ---p----- a------- iq(ku_alt) ---p----- a------- iq(ku_ara) --dp----- am------ lt(basic) ---p----- am------ lt(us) ---p----- am------ lt(std) ---p----- am------ lt(ibm) ---p----- am------ lt(lekp) ---p----- am------ lt(lekpa) ---p----- am------ lt(balticplus) ---p----- --k----- kpdl(dot) ---p----- --k----- kpdl(comma) ---p----- --k----- kpdl(dotoss) ---p----- --k----- kpdl(dotoss_latin9) ---p----- --k----- kpdl(commaoss) ---p----- --k----- kpdl(momayyezoss) ---p----- --k----- kpdl(kposs) ---p----- --k----- kpdl(semi) --dp----- a------- il(basic) ---p----- a------- il(lyx) ---p----- a------- il(phonetic) ---p----- a------- il(biblical) --dp----- a------- sn(basic) --dp----- a------- in(deva) ---p----- a------- in(bolnagri) ---p----- a------- in(ben) --------- -------- in(ben_probhat) ---p----- a------- in(guj) ---p----- a------- in(kan) ---p----- a------- in(mal) ---p----- a------- in(mal_lalitha) ---p----- a------- in(ori) ---p----- a------- in(tam) ---p----- a------- in(tam_unicode) ---p----- a------- in(tam_keyboard_with_numerals) ---p----- a------- in(tam_TSCII) ---p----- a------- in(tam_TAB) ---p----- a------- in(tel) ---p----- a------- in(urd-phonetic) ---p----- a------- in(urd-phonetic3) ---p----- a------- in(urd-winkeys) ---p----- a------- in(guru) ---p----- a------- in(jhelum) ---p----- a------- in(olpc) ---p----- a------- in(hin-wx) +-dp----- a------- dk(basic) +--p----- a------- dk(nodeadkeys) +--p----- a------- dk(mac) +--p----- a------- dk(mac_nodeadkeys) +--p----- a------- dk(dvorak) -dp----- a------- fo(basic) --p----- a------- fo(nodeadkeys) --dp----- a------- hr(basic) ---p----- a------- hr(us) ---p----- a------- hr(alternatequotes) ---p----- a------- hr(unicode) ---p----- a------- hr(unicodeus) --dp----- a------- by(basic) ---p----- a------- by(legacy) ---p----- a------- by(latin) --dp----- -------- tr(basic) ---p----- -------- tr(f) ---p----- -------- tr(alt) ---p----- a------- tr(Sundeadkeys) ---p----- a------- tr(sundeadkeys) ---p----- -------- tr(ku) ---p----- -------- tr(ku_f) ---p----- -------- tr(ku_alt) ---p----- -------- tr(intl) ---p----- a------- tr(olpc) ---p----- -------- tr(crh) ---p----- -------- tr(crh_f) ---p----- -------- tr(crh_alt) --dp----- a------- gn(basic) --dp----- a------- es(basic) ---p----- a------- es(Sundeadkeys) ---p----- a------- es(sundeadkeys) ---p----- a------- es(nodeadkeys) ---p----- a------- es(dvorak) ---p----- a------- es(cat) ---p----- a------- es(ast) ---p----- a------- es(mac) ---p----- a------- es(olpc) ---p----- a------- es(deadtilde) --dp----- a------- cz(basic) --------- -------- cz(bksl) ---p----- a------- cz(qwerty) --------- -------- cz(qwerty_bksl) ---p----- a---g--- cz(ucw) --dp----- a------- bd(basic) --------- -------- bd(probhat) --dp----- a------- kh(basic) ---p----- a------- kh(olpc) +-dp----- a---g--- gr(basic) +--p----- a---g--- gr(simple) +h-p----- a---g--- gr(bare) +--p----- a---g--- gr(extended) +--p----- a---g--- gr(polytonic) +--p----- a---g--- gr(nodeadkeys) +-------- -------- sony_vndr/us(nwp5461) -dp----- -------- hu(basic) --p----- -------- hu(standard) --p----- -------- hu(nodeadkeys) @@ -227,50 +152,23 @@ h-p----- --k----- hu(def_dot) h-p----- a------- hu(def_dead) h-p----- a------- hu(def_nodead) h-p----- a------- hu(def_common) --dp----- a------- ir(pes) ---p----- a------- ir(pes_keypad) -h-p----- a------- ir(pes_part_basic) -h-p----- a------- ir(pes_part_ext) -h-p----- a------- ir(pes_part_keypad) ---p----- a------- ir(ku) ---p----- a------- ir(ku_f) ---p----- a------- ir(ku_alt) ---p----- a------- ir(ku_ara) --dp----- a------- mt(basic) ---p----- a------- mt(us) --------- -------- sgi_vndr/jp(jp106) --------- -------- sgi_vndr/jp(alternate106) --dp----- a------- pk(urd-phonetic) ---p----- a------- pk(urd-crulp) ---p----- a------- pk(urd-nla) ---p----- a------- pk(ara) ---p----- a------- pk(olpc) --------- -------- sun_vndr/fr(type4) --------- -------- sun_vndr/fr(type5) --------- -------- sun_vndr/fr(type6) --------- -------- sun_vndr/nl(type4) --------- -------- sun_vndr/tuv(type4basic) --------- -------- sun_vndr/tuv(type4) --------- -------- sun_vndr/tuv(type5basic) --------- -------- sun_vndr/tuv(type5) --------- -------- sun_vndr/pl(type5) --------- -------- sun_vndr/no(type4) --------- -------- sun_vndr/no(type5) --------- -------- sun_vndr/usb(sun_usb) --dp----- a------- sun_vndr/lt(type5) --------- -------- sun_vndr/tr(basic) --------- -------- sun_vndr/tr(type6Q) --------- -------- sun_vndr/tr(type6F) ---p----- -------- sun_vndr/es(type4) ---p----- -------- sun_vndr/es(type5) ---p----- -------- sun_vndr/es(type6) --------- -------- sun_vndr/cz(type5) --dp----- a------- sun_vndr/hu(type5) --------- -------- sun_vndr/sw(type4de) --------- -------- sun_vndr/sw(type4fr) --------- -------- sun_vndr/sw(type5fr) --------- -------- sun_vndr/sw(type5de) +-------- -------- sun_vndr/de(type4) +-------- -------- sun_vndr/fi(basic) +-------- -------- sun_vndr/ko(type4) +-------- -------- sun_vndr/ko(type5) +--p----- -------- sun_vndr/ko(type6) +-------- -------- sun_vndr/tw(type4) +-------- -------- sun_vndr/tw(type5) +--p----- -------- sun_vndr/tw(type6) +-------- -------- sun_vndr/dk(type4) +-------- -------- sun_vndr/dk(type5) -------- -------- sun_vndr/gr(type5) +-dp----- a------- sun_vndr/hu(type5) +-------- -------- sun_vndr/cz(type5) +-dp----- -------- sun_vndr/solaris(defaults) +--p----- -------- sun_vndr/solaris(keynames) +--p----- -------- sun_vndr/solaris(xf86keynames) +-dp----- a------- sun_vndr/lt(type5) -------- -------- sun_vndr/jp(basic) -------- -------- sun_vndr/jp(type4) -------- -------- sun_vndr/jp(type5) @@ -280,18 +178,30 @@ h-p----- a------- ir(pes_part_keypad) -------- -------- sun_vndr/jp(J3100) -------- -------- sun_vndr/jp(Muhenkan_x86) --p----- -------- sun_vndr/jp(type7) +-------- -------- sun_vndr/no(type4) +-------- -------- sun_vndr/no(type5) +-dp----- a------- sun_vndr/lv(type5) +-------- -------- sun_vndr/pl(type5) -------- -------- sun_vndr/gb(type4) --p----- -------- sun_vndr/gb(type5) --p----- -------- sun_vndr/gb(type6) --------- -------- sun_vndr/se(type4) --------- -------- sun_vndr/se(type5) ---p----- -------- sun_vndr/se(type6) --------- -------- sun_vndr/dk(type4) --------- -------- sun_vndr/dk(type5) +-------- -------- sun_vndr/tr(basic) +-------- -------- sun_vndr/tr(type6Q) +-------- -------- sun_vndr/tr(type6F) -------- -------- sun_vndr/pt(type4) -------- -------- sun_vndr/pt(type5) --p----- -------- sun_vndr/pt(type6) --------- -------- sun_vndr/cs(type5) +-------- -------- sun_vndr/sw(type4de) +-------- -------- sun_vndr/sw(type4fr) +-------- -------- sun_vndr/sw(type5fr) +-------- -------- sun_vndr/sw(type5de) +-------- -------- sun_vndr/fr(type4) +-------- -------- sun_vndr/fr(type5) +-------- -------- sun_vndr/fr(type6) +-------- -------- sun_vndr/nl(type4) +-------- -------- sun_vndr/se(type4) +-------- -------- sun_vndr/se(type5) +--p----- -------- sun_vndr/se(type6) h------- -------- sun_vndr/us(sunbasic) h------- -------- sun_vndr/us(left_funkeys) h------- -------- sun_vndr/us(volumekeys) @@ -307,53 +217,31 @@ h------- -------- sun_vndr/us(volumekeys) -------- -------- sun_vndr/us(pc104) -------- -------- sun_vndr/us(pc101currency) -------- -------- sun_vndr/us(US101A_Sun) --------- -------- sun_vndr/de(type4) --dp----- -------- sun_vndr/solaris(defaults) ---p----- -------- sun_vndr/solaris(keynames) ---p----- -------- sun_vndr/solaris(xf86keynames) +--p----- -------- sun_vndr/es(type4) +--p----- -------- sun_vndr/es(type5) +--p----- -------- sun_vndr/es(type6) -------- -------- sun_vndr/it(type4) -------- -------- sun_vndr/it(type5) --p----- -------- sun_vndr/it(type6) --------- -------- sun_vndr/tw(type4) --------- -------- sun_vndr/tw(type5) ---p----- -------- sun_vndr/tw(type6) +-------- -------- sun_vndr/tuv(type4basic) +-------- -------- sun_vndr/tuv(type4) +-------- -------- sun_vndr/tuv(type5basic) +-------- -------- sun_vndr/tuv(type5) +-------- -------- sun_vndr/cs(type5) +-------- -------- sun_vndr/usb(sun_usb) -------- -------- sun_vndr/ru(basic) --p----- -------- sun_vndr/ru(type6) --dp----- a------- sun_vndr/lv(type5) --------- -------- sun_vndr/ko(type4) --------- -------- sun_vndr/ko(type5) ---p----- -------- sun_vndr/ko(type6) --------- -------- sun_vndr/fi(basic) --dp----- a------- ro(basic) ---p----- a------- ro(cedilla) ---p----- a------- ro(std) ---p----- a------- ro(std_cedilla) ---p----- a------- ro(winkeys) ---p----- -------- ro(crh_f) ---p----- -------- ro(crh_alt) ---p----- -------- ro(crh_dobruca1) ---p----- -------- ro(crh_dobruca2) --dp----- a------- mm(basic) --dp----- a------- ee(basic) ---p----- a------- ee(nodeadkeys) ---p----- a------- ee(dvorak) ---p----- a------- ee(us) -hdp----- -m------ capslock(capslock) -h-p----- -m------ capslock(shiftlock) -h-p----- -m------ capslock(grouplock) -h-p----- -m------ capslock(swapescape) -h-p----- -m------ capslock(groupshift) -h-p----- -m------ capslock(escape) -h-p----- -m------ capslock(backspace) -h-p----- -m------ capslock(super) -h-p----- -m------ capslock(hyper) -h-p----- -m------ capslock(none) -h-p----- -m------ capslock(numlock) --dp----- a------- is(basic) ---p----- a------- is(Sundeadkeys) ---p----- a------- is(nodeadkeys) ---p----- a------- is(mac) ---p----- a------- is(dvorak) +-dp----- a------- az(latin) +--p----- a------- az(cyrillic) +-dp----- a------- ge(basic) +--p----- a------- ge(qwerty) +--p----- a------- ge(ergonomic) +--p----- a------- ge(mess) +--p----- a------- ge(ru) +--p----- a------- ge(os) +-------- -------- hp_vndr/us(hil) +-dp----- a------- et(basic) +--p----- a------- et(olpc) -d------ -------- br(abnt2) --p----- a------- br(nodeadkeys) --p----- a------- br(thinkpad) @@ -362,69 +250,85 @@ h-p----- -m------ capslock(numlock) --p----- a------- br(nativo) --p----- a------- br(nativo-us) --p----- a------- br(nativo-epo) --dp----- -------- latin(basic) ---p----- -------- latin(type2) ---p----- -------- latin(type3) ---p----- -------- latin(type4) ---p----- -------- latin(nodeadkeys) ---p----- -------- latin(type2_nodeadkeys) ---p----- -------- latin(type3_nodeadkeys) ---p----- -------- latin(type4_nodeadkeys) --dp----- a------- mao(basic) --dp----- a---g--- gr(basic) ---p----- a---g--- gr(simple) -h-p----- a---g--- gr(bare) ---p----- a---g--- gr(extended) ---p----- a---g--- gr(polytonic) ---p----- a---g--- gr(nodeadkeys) +-dp----- -------- typo(base) +-dp----- a------- kz(basic) +--p----- a------- kz(ruskaz) +--p----- a------- kz(kazrus) +--p----- a------- kz(olpc) +--p----- --k----- kpdl(dot) +--p----- --k----- kpdl(comma) +--p----- --k----- kpdl(dotoss) +--p----- --k----- kpdl(dotoss_latin9) +--p----- --k----- kpdl(commaoss) +--p----- --k----- kpdl(momayyezoss) +--p----- --k----- kpdl(kposs) +--p----- --k----- kpdl(semi) +-dp----- a------- kh(basic) +--p----- a------- kh(olpc) +-dp----- a------- cn(basic) +--p----- a------- cn(tib) +--p----- a------- cn(tib_asciinum) +--p----- -m------ altwin(meta_alt) +--p----- -m------ altwin(ctrl_win) +--p----- -m------ altwin(ctrl_alt_win) +--p----- -m------ altwin(meta_win) +--p----- -m------ altwin(left_meta_win) +--p----- -m------ altwin(hyper_win) +--p----- -m------ altwin(menu) +--p----- -m------ altwin(alt_super_win) +--p----- -m------ altwin(swap_lalt_lwin) +--p----- -m------ ctrl(nocaps) +--p----- -m------ ctrl(swapcaps) +--p----- -m------ ctrl(ctrl_ac) +--p----- -m------ ctrl(ctrl_aa) +--p----- -m------ ctrl(ctrl_ra) +-dp----- a------- lk(sin_phonetic) +--p----- a------- lk(tam_unicode) +--p----- a------- lk(tam_TAB) +-dp----- a------- cz(basic) +-------- -------- cz(bksl) +--p----- a------- cz(qwerty) +-------- -------- cz(qwerty_bksl) +--p----- a---g--- cz(ucw) +-dp----- a------- bg(bds) +--p----- a------- bg(phonetic) +--p----- a------- bg(bas_phonetic) +h-p----- a------- bg(latin) +-dp----- a------- sk(basic) +-------- -------- sk(bksl) +--p----- a------- sk(qwerty) +-------- -------- sk(qwerty_bksl) +-dp----- am------ lt(basic) +--p----- am------ lt(us) +--p----- am------ lt(std) +--p----- am------ lt(ibm) +--p----- am------ lt(lekp) +--p----- am------ lt(lekpa) +--p----- am------ lt(balticplus) +-------- -------- fujitsu_vndr/jp +-------- -------- fujitsu_vndr/us +-dp----- a------- sn(basic) +-dp----- -m------ terminate(ctrl_alt_bksp) +-dp----- a------- gn(basic) +-dp----- a------- rs(basic) +--p----- a------- rs(latin) +--p----- a------- rs(yz) +h-p----- a------- rs(common) +h-p----- a------- rs(cyralpha) +h-p----- a------- rs(latalpha) +h-p----- a------- rs(twoletter) +h-p----- a------- rs(latlevel3) +h-p----- a------- rs(cyrlevel3) +--p----- a------- rs(latinunicode) +--p----- a------- rs(latinyz) +--p----- a------- rs(latinunicodeyz) +-------- -------- rs(alternatequotes) +-------- -------- rs(latinalternatequotes) -dp----- a------- jp(106) h-p----- a------- jp(common) --p----- a------- jp(OADG109A) --p----- a------- jp(kana) --p----- a------- jp(nicola_f_bs) --d------ a------- kr(kr106) --------- a------- kr(kr104) -h-p----- ---f---- kr(koreankeys) -h-p----- ---f---- kr(koreankeys_raltctl) --dp----- a------- ara(basic) ---p----- a------- ara(qwerty) ---p----- a------- ara(azerty) ---p----- a------- ara(digits) ---p----- a------- ara(qwerty_digits) ---p----- a------- ara(azerty_digits) ---p----- a------- ara(buckwalter) ---p----- a------- ara(olpc) --d------ -------- xfree68_vndr/ataritt(us) --------- -------- xfree68_vndr/ataritt(de) --d------ -------- xfree68_vndr/amiga(usa1) --dp----- a------- gb(basic) ---p----- a------- gb(intl) ---p----- a------- gb(extd) ---p----- a------- gb(colemak) ---p----- a------- gb(dvorak) ---p----- a------- gb(dvorakukp) ---p----- a------- gb(mac) ---p----- -------- eurosign(e) ---p----- -------- eurosign(2) ---p----- -------- eurosign(4) ---p----- -------- eurosign(5) --dp----- -------- typo(base) --dp----- -m------ level3(ralt_switch) ---p----- -m------ level3(ralt_alt) ---p----- -m------ level3(ralt_switch_multikey) -h-p----- -m------ level3(ralt_switch_for_alts_toggle) ---p----- -m------ level3(alt_switch) ---p----- -m------ level3(lalt_switch) ---p----- -m------ level3(switch) ---p----- -m------ level3(menu_switch) ---p----- -m------ level3(win_switch) ---p----- -m------ level3(lwin_switch) ---p----- -m------ level3(rwin_switch) ---p----- -m------ level3(enter_switch) ---p----- --kf---- srvr_ctrl(xfree86) ---p----- --k----- srvr_ctrl(stdkeypad) ---p----- ---f---- srvr_ctrl(fkey2vt) ---p----- --kf---- srvr_ctrl(no_srvr_keys) h-p----- --k----- keypad(overlay) h-p----- --k----- keypad(overlay1) h-p----- --k----- keypad(overlay2) @@ -448,73 +352,168 @@ hdp----- --k----- keypad(x11) --p----- --k----- keypad(ops) --p----- --k----- keypad(hex) --p----- --k----- keypad(atm) --dp----- a------- se(basic) ---p----- a------- se(se) ---p----- a------- se(nodeadkeys) ---p----- a------- se(dvorak) ---p----- a------- se(rus) ---p----- a------- se(rus_nodeadkeys) --------- -------- se(smi) ---p----- a------- se(mac) ---p----- a------- se(svdvorak) --dp----- a------- dk(basic) ---p----- a------- dk(nodeadkeys) ---p----- a------- dk(mac) ---p----- a------- dk(mac_nodeadkeys) ---p----- a------- dk(dvorak) --dp----- a------- cn(basic) ---p----- a------- cn(tib) ---p----- a------- cn(tib_asciinum) --dp----- a------- uz(cyrillic) ---p----- a------- uz(latin) ---p----- -------- uz(crh) ---p----- -------- uz(crh_f) ---p----- -------- uz(crh_alt) --dp----- a------- sk(basic) --------- -------- sk(bksl) ---p----- a------- sk(qwerty) --------- -------- sk(qwerty_bksl) --dp----- a------- me(basic) ---p----- a------- me(cyrillic) ---p----- a------- me(cyrillicyz) ---p----- a------- me(latinunicode) ---p----- a------- me(latinyz) ---p----- a------- me(latinunicodeyz) --------- -------- me(cyrillicalternatequotes) --------- -------- me(latinalternatequotes) --dp----- a------- mk(basic) ---p----- a------- mk(nodeadkeys) --dp----- a------- mn(basic) ---p----- a------- mn(olpc) ---p----- -m------ altwin(meta_alt) ---p----- -m------ altwin(ctrl_win) ---p----- -m------ altwin(ctrl_alt_win) ---p----- -m------ altwin(meta_win) ---p----- -m------ altwin(left_meta_win) ---p----- -m------ altwin(hyper_win) ---p----- -m------ altwin(menu) ---p----- -m------ altwin(alt_super_win) ---p----- -m------ altwin(swap_lalt_lwin) +-dp----- a------- hr(basic) +--p----- a------- hr(us) +--p----- a------- hr(alternatequotes) +--p----- a------- hr(unicode) +--p----- a------- hr(unicodeus) +-dp----- a------- brai(home_row) +--p----- a------- brai(left_hand) +--p----- a------- brai(right_hand) +h-p----- --k----- brai(keypad) +-dp----- a------- latam(basic) +--p----- a------- latam(Sundeadkeys) +--p----- a------- latam(sundeadkeys) +--p----- a------- latam(nodeadkeys) +--p----- a------- latam(deadtilde) +-dp----- a------- sy(basic) +--p----- a------- sy(syc) +--p----- a------- sy(syc_phonetic) +--p----- a------- sy(ku) +--p----- a------- sy(ku_f) +--p----- a------- sy(ku_alt) +-dp----- a------- am(basic) +--p----- a------- am(olpc) +-------- -------- am(phonetic) +--p----- a------- am(phonetic-alt) +--p----- a------- am(eastern) +--p----- a------- am(western) +--p----- a------- am(eastern-alt) +--p----- -m------ level5(rctrl_switch) +-d------ a------- kr(kr106) +-------- a------- kr(kr104) +h-p----- ---f---- kr(koreankeys) +h-p----- ---f---- kr(koreankeys_raltctl) +-d------ -------- xfree68_vndr/amiga(usa1) +-d------ -------- xfree68_vndr/ataritt(us) +-------- -------- xfree68_vndr/ataritt(de) +-dp----- a------- no(basic) +--p----- a------- no(nodeadkeys) +--p----- a------- no(dvorak) +--p----- a------- no(smi) +--p----- a------- no(smi_nodeadkeys) +--p----- a------- no(mac) +--p----- a------- no(mac_nodeadkeys) +-dp----- a------- mv(basic) +-dp----- -------- latin(basic) +--p----- -------- latin(type2) +--p----- -------- latin(type3) +--p----- -------- latin(type4) +--p----- -------- latin(nodeadkeys) +--p----- -------- latin(type2_nodeadkeys) +--p----- -------- latin(type3_nodeadkeys) +--p----- -------- latin(type4_nodeadkeys) +-dp----- a------- ua(unicode) +--p----- a------- ua(legacy) +--p----- a------- ua(winkeys) +--p----- a------- ua(typewriter) +--p----- a------- ua(phonetic) +--p----- a------- ua(rstu) +--p----- a------- ua(rstu_ru) +--p----- a------- ua(homophonic) +--p----- -------- ua(crh) +--p----- -------- ua(crh_f) +--p----- -------- ua(crh_alt) +-dp----- a------- al(basic) +-dp----- a------- iq(basic) +--p----- a------- iq(ku) +--p----- a------- iq(ku_f) +--p----- a------- iq(ku_alt) +--p----- a------- iq(ku_ara) +-dp----- am------ pc(pc105) +h-p----- a------- pc(function) +h-p----- a------- pc(editing) +-dp----- am------ lv(basic) +--p----- am------ lv(apostrophe) +--p----- am------ lv(tilde) +--p----- am------ lv(fkey) +-dp----- a------- si(basic) +--p----- a------- si(us) +--p----- a------- si(alternatequotes) +-dp----- a------- by(basic) +--p----- a------- by(legacy) +--p----- a------- by(latin) +-dp----- -m------ level3(ralt_switch) +--p----- -m------ level3(ralt_alt) +--p----- -m------ level3(ralt_switch_multikey) +h-p----- -m------ level3(ralt_switch_for_alts_toggle) +--p----- -m------ level3(alt_switch) +--p----- -m------ level3(lalt_switch) +--p----- -m------ level3(switch) +--p----- -m------ level3(menu_switch) +--p----- -m------ level3(win_switch) +--p----- -m------ level3(lwin_switch) +--p----- -m------ level3(rwin_switch) +--p----- -m------ level3(enter_switch) -------- am------ olpc(olpc) --d------ -------- macintosh_vndr/fr(extended) --------- -------- macintosh_vndr/fr(nodeadkeys) --dp----- a------- macintosh_vndr/nl(basic) ---p----- a------- macintosh_vndr/ch(extended) ---p----- a------- macintosh_vndr/ch(de) ---p----- a------- macintosh_vndr/ch(fr) ---p----- a------- macintosh_vndr/ch(nodeadkeys) --dp----- a------- macintosh_vndr/no(basic) ---p----- a------- macintosh_vndr/no(nodeadkeys) --dp----- a------- macintosh_vndr/es(basic) --dp----- a------- macintosh_vndr/is(basic) ---p----- a------- macintosh_vndr/is(nodeadkeys) --dp----- a------- macintosh_vndr/gb(basic) --dp----- a------- macintosh_vndr/se(basic) ---p----- a------- macintosh_vndr/se(nodeadkeys) +-dp----- a------- pl(basic) +--p----- a------- pl(qwertz) +--p----- a------- pl(dvorak) +--p----- a------- pl(dvorak_quotes) +--p----- a------- pl(dvorak_altquotes) +--p----- a------- pl(csb) +--p----- a------- pl(ru_phonetic_dvorak) +-dp----- a------- gb(basic) +--p----- a------- gb(intl) +--p----- a------- gb(extd) +--p----- a------- gb(colemak) +--p----- a------- gb(dvorak) +--p----- a------- gb(dvorakukp) +--p----- a------- gb(mac) +-dp----- a------- in(deva) +--p----- a------- in(bolnagri) +--p----- a------- in(ben) +-------- -------- in(ben_probhat) +--p----- a------- in(guj) +--p----- a------- in(kan) +--p----- a------- in(mal) +--p----- a------- in(mal_lalitha) +--p----- a------- in(ori) +--p----- a------- in(tam) +--p----- a------- in(tam_unicode) +--p----- a------- in(tam_keyboard_with_numerals) +--p----- a------- in(tam_TSCII) +--p----- a------- in(tam_TAB) +--p----- a------- in(tel) +--p----- a------- in(urd-phonetic) +--p----- a------- in(urd-phonetic3) +--p----- a------- in(urd-winkeys) +--p----- a------- in(guru) +--p----- a------- in(jhelum) +--p----- a------- in(olpc) +--p----- a------- in(hin-wx) +--p----- -m------ shift(breaks_caps) +-dp----- a------- ch(basic) +--p----- a------- ch(de) +--p----- a------- ch(de_Sundeadkeys) +--p----- a------- ch(de_sundeadkeys) +--p----- a------- ch(de_nodeadkeys) +--p----- a------- ch(fr) +--p----- a------- ch(fr_Sundeadkeys) +--p----- a------- ch(fr_sundeadkeys) +--p----- a------- ch(fr_nodeadkeys) +--p----- a------- ch(de_mac) +--p----- a------- ch(fr_mac) +-------- -------- sgi_vndr/jp(jp106) +-------- -------- sgi_vndr/jp(alternate106) +-dp----- a------- macintosh_vndr/de(basic) +--p----- a------- macintosh_vndr/de(Sundeadkeys) +--p----- a------- macintosh_vndr/de(sundeadkeys) +--p----- a------- macintosh_vndr/de(nodeadkeys) +-dp----- a------- macintosh_vndr/fi(basic) +--p----- a------- macintosh_vndr/fi(nodeadkeys) --p----- a------- macintosh_vndr/dk(basic) -dp----- a------- macintosh_vndr/dk(full) --p----- a------- macintosh_vndr/dk(nodeadkeys) --p----- a------- macintosh_vndr/dk(macbookpro) +-dp----- a------- macintosh_vndr/latam(basic) +-dp----- a------- macintosh_vndr/no(basic) +--p----- a------- macintosh_vndr/no(nodeadkeys) +-dp----- a------- macintosh_vndr/gb(basic) +--p----- a------- macintosh_vndr/ch(extended) +--p----- a------- macintosh_vndr/ch(de) +--p----- a------- macintosh_vndr/ch(fr) +--p----- a------- macintosh_vndr/ch(nodeadkeys) -dp----- -m------ macintosh_vndr/apple(extended) --p----- -m------ macintosh_vndr/apple(laptop) --p----- -m------ macintosh_vndr/apple(laptop_bad_switch) @@ -522,17 +521,35 @@ hdp----- --k----- keypad(x11) --p----- a------- macintosh_vndr/pt(Sundeadkeys) --p----- a------- macintosh_vndr/pt(sundeadkeys) --p----- a------- macintosh_vndr/pt(nodeadkeys) +-d------ -------- macintosh_vndr/fr(extended) +-------- -------- macintosh_vndr/fr(nodeadkeys) +-dp----- a------- macintosh_vndr/nl(basic) +-dp----- a------- macintosh_vndr/se(basic) +--p----- a------- macintosh_vndr/se(nodeadkeys) -------- -------- macintosh_vndr/us(extended) h------- -------- macintosh_vndr/us(oldmac) --dp----- a------- macintosh_vndr/de(basic) ---p----- a------- macintosh_vndr/de(Sundeadkeys) ---p----- a------- macintosh_vndr/de(sundeadkeys) ---p----- a------- macintosh_vndr/de(nodeadkeys) +-dp----- a------- macintosh_vndr/es(basic) -------- -------- macintosh_vndr/it(extended) --dp----- a------- macintosh_vndr/latam(basic) --dp----- a------- macintosh_vndr/fi(basic) ---p----- a------- macintosh_vndr/fi(nodeadkeys) ---p----- -m------ level5(rctrl_switch) +-dp----- a------- macintosh_vndr/is(basic) +--p----- a------- macintosh_vndr/is(nodeadkeys) +-dp----- a------- bd(basic) +-------- -------- bd(probhat) +-dp----- -------- tr(basic) +--p----- -------- tr(f) +--p----- -------- tr(alt) +--p----- a------- tr(Sundeadkeys) +--p----- a------- tr(sundeadkeys) +--p----- -------- tr(ku) +--p----- -------- tr(ku_f) +--p----- -------- tr(ku_alt) +--p----- -------- tr(intl) +--p----- a------- tr(olpc) +--p----- -------- tr(crh) +--p----- -------- tr(crh_f) +--p----- -------- tr(crh_alt) +-dp----- a------- tj(basic) +-------- -------- tj(legacy) +-dp----- a------- mao(basic) -dp----- a------- pt(basic) --p----- a------- pt(Sundeadkeys) --p----- a------- pt(sundeadkeys) @@ -543,92 +560,14 @@ h------- -------- macintosh_vndr/us(oldmac) --p----- a------- pt(nativo) --p----- a------- pt(nativo-us) --p----- a------- pt(nativo-epo) --dp----- a------- ge(basic) ---p----- a------- ge(qwerty) ---p----- a------- ge(ergonomic) ---p----- a------- ge(mess) ---p----- a------- ge(ru) ---p----- a------- ge(os) --------- -------- sony_vndr/us(nwp5461) --dp----- am------ za(basic) --------- -------- hp_vndr/us(hil) --------- -------- extras/rs(combiningkeys) ---p----- am------ extras/apl(common) ---p----- am------ extras/apl(unified) --dp----- am------ extras/apl(sax) ---p----- am------ extras/apl(apl2) ---p----- am------ extras/apl(aplplusII) ---p----- am------ extras/apl(aplx) ---p----- a------- extras/us(intl-unicode) ---p----- a------- extras/us(alt-intl-unicode) ---p----- a------- extras/us(ats) ---p----- a------- extras/us(crd) --dp----- a------- ie(basic) ---p----- a------- ie(CloGaelach) ---p----- a------- ie(UnicodeExpert) ---p----- a------- ie(ogam) ---p----- a------- ie(ogam_is434) ---p----- -m------ group(switch) ---p----- -m------ group(lswitch) ---p----- -m------ group(win_switch) ---p----- -m------ group(lwin_switch) ---p----- -m------ group(rwin_switch) ---p----- -m------ group(rctrl_switch) ---p----- -m------ group(toggle) ---p----- -m------ group(shifts_toggle) ---p----- -m------ group(ctrl_shift_toggle) ---p----- -m------ group(lctrl_lshift_toggle) ---p----- -m------ group(shift_caps_toggle) ---p----- -m------ group(shift_caps_switch) ---p----- -m------ group(win_menu_switch) ---p----- -m------ group(ctrl_alt_toggle) ---p----- -m------ group(alt_shift_toggle) ---p----- -m------ group(menu_toggle) ---p----- -m------ group(lwin_toggle) ---p----- -m------ group(rwin_toggle) ---p----- -m------ group(ctrls_toggle) ---p----- -m------ group(alts_toggle) ---p----- -m------ group(lshift_toggle) ---p----- -m------ group(rshift_toggle) ---p----- -m------ group(lalt_toggle) ---p----- -m------ group(lctrl_toggle) ---p----- -m------ group(rctrl_toggle) ---p----- -m------ group(alt_caps_toggle) -h-p----- -m------ group(olpc) ---p----- -m------ group(alt_space_toggle) ---p----- -m------ group(sclk_toggle) --dp----- am------ us(basic) ---p----- a------- us(euro) ---p----- a------- us(intl) ---p----- a------- us(alt-intl) ---p----- a------- us(dvorak) ---p----- a------- us(dvorak-intl) ---p----- a------- us(dvorak-l) ---p----- a------- us(dvorak-r) ---p----- a------- us(dvorak-classic) ---p----- a------- us(dvp) ---p----- a------- us(rus) ---p----- a------- us(mac) ---p----- a------- us(colemak) ---p----- a------- us(altgr-intl) ---p----- a------- us(classmate) ---p----- a------- us(classmate-intl) ---p----- a------- us(classmate-alt-intl) ---p----- a------- us(classmate-altgr-intl) ---p----- a------- us(olpc) ---p----- a------- us(olpc2) ---p----- am------ us(chr) --dp----- a------- et(basic) ---p----- a------- et(olpc) --d------ -------- nec_vndr/jp(pc98) --dp----- a------- ma(arabic) ---p----- a------- ma(french) ---p----- a------- ma(tifinagh) ---p----- a------- ma(tifinagh-phonetic) ---p----- a------- ma(tifinagh-extended) ---p----- a------- ma(tifinagh-extended-phonetic) ---p----- a------- ma(tifinagh-alt) ---p----- a------- ma(tifinagh-alt-phonetic) +-dp----- a------- ara(basic) +--p----- a------- ara(qwerty) +--p----- a------- ara(azerty) +--p----- a------- ara(digits) +--p----- a------- ara(qwerty_digits) +--p----- a------- ara(azerty_digits) +--p----- a------- ara(buckwalter) +--p----- a------- ara(olpc) -dp----- -------- ca(fr) -------- -------- ca(fr-dvorak) --p----- -------- ca(fr-legacy) @@ -640,45 +579,7 @@ h-p----- -m------ group(olpc) -------- -------- ca(olpc) --p----- a------- ca(kut) --p----- a------- ca(eng) ---p----- -------- nbsp(none) ---p----- -------- nbsp(level2) ---p----- -------- nbsp(level3) ---p----- -------- nbsp(level3s) ---p----- -------- nbsp(level3n) ---p----- -------- nbsp(level4) ---p----- -------- nbsp(level4n) ---p----- -------- nbsp(level4nl) --dp----- a------- ba(basic) ---p----- a------- ba(us) ---p----- a------- ba(alternatequotes) ---p----- a------- ba(unicode) ---p----- a------- ba(unicodeus) --dp----- a------- vn(basic) --d------ -------- de(basic) ---p----- a------- de(nodeadkeys) ---p----- a------- de(deadgraveacute) ---p----- a------- de(deadacute) ---p----- a------- de(ro) ---p----- a------- de(ro_nodeadkeys) ---p----- a------- de(dvorak) ---p----- a------- de(Sundeadkeys) ---p----- a------- de(sundeadkeys) ---p----- amk----- de(neo) ---p----- a------- de(mac) ---p----- a------- de(mac_nodeadkeys) ---p----- a------- de(dsb) ---p----- a------- de(dsb_qwertz) ---p----- a------- de(qwerty) --dp----- a------- it(basic) ---p----- a------- it(nodeadkeys) ---p----- a------- it(mac) ---p----- a------- it(geo) --------- -------- it(olpc) ---p----- am------ it(us) --dp----- a------- bg(bds) ---p----- a------- bg(phonetic) ---p----- a------- bg(bas_phonetic) -h-p----- a------- bg(latin) +-d------ -------- nec_vndr/jp(pc98) h-p----- a------- inet(media_common) h-p----- a------- inet(nav_common) h-p----- a------- inet(acpi_common) @@ -790,53 +691,150 @@ h-p----- a------- inet(logitech_set3) --p----- a------- inet(creativedw7000) --p----- a------- inet(compalfl90) --p----- a------- inet(pc105) --dp----- a------- latam(basic) ---p----- a------- latam(Sundeadkeys) ---p----- a------- latam(sundeadkeys) ---p----- a------- latam(nodeadkeys) ---p----- a------- latam(deadtilde) --dp----- a------- sy(basic) ---p----- a------- sy(syc) ---p----- a------- sy(syc_phonetic) ---p----- a------- sy(ku) ---p----- a------- sy(ku_f) ---p----- a------- sy(ku_alt) --dp----- a------- lk(sin_phonetic) ---p----- a------- lk(tam_unicode) ---p----- a------- lk(tam_TAB) --------- -------- digital_vndr/pc(pc) --------- -------- digital_vndr/pc(pc104) --------- -------- digital_vndr/us(us) --------- -------- digital_vndr/us(vt105-tw) --------- -------- digital_vndr/us(vt105-dp) --------- -------- digital_vndr/us(vt105) --------- -------- digital_vndr/us(vt108-tw) --------- -------- digital_vndr/us(vt108-dp) --------- -------- digital_vndr/us(vt108) --------- -------- digital_vndr/us(unix) --------- -------- digital_vndr/us(pcxalga) --------- -------- digital_vndr/us(pcxal) --------- -------- digital_vndr/us(pcxalaa) --------- -------- digital_vndr/us(pcxalfa) --------- -------- digital_vndr/us(pcxalka) --------- -------- digital_vndr/us(lk44x) --------- -------- digital_vndr/us(pc104) --d------ -------- digital_vndr/lk(common) --------- -------- digital_vndr/lk(lk401) --------- -------- digital_vndr/vt(vt105) --------- -------- digital_vndr/vt(vt108) --dp----- a------- be(basic) ---p----- a------- be(oss) ---p----- a------- be(oss_frbe) ---p----- a------- be(oss_latin9) ---p----- a------- be(oss_Sundeadkeys) ---p----- a------- be(oss_sundeadkeys) ---p----- a------- be(iso-alternate) ---p----- a------- be(sundeadkeys) ---p----- a------- be(Sundeadkeys) ---p----- a------- be(nodeadkeys) ---p----- a------- be(wang) --dp----- a------- mv(basic) +-dp----- a------- ir(pes) +--p----- a------- ir(pes_keypad) +h-p----- a------- ir(pes_part_basic) +h-p----- a------- ir(pes_part_ext) +h-p----- a------- ir(pes_part_keypad) +--p----- a------- ir(ku) +--p----- a------- ir(ku_f) +--p----- a------- ir(ku_alt) +--p----- a------- ir(ku_ara) +-dp----- a------- fr(basic) +--p----- a------- fr(Sundeadkeys) +--p----- a------- fr(sundeadkeys) +--p----- a------- fr(nodeadkeys) +--p----- a------- fr(oss) +--p----- a------- fr(oss_latin9) +--p----- a------- fr(oss_Sundeadkeys) +--p----- a------- fr(oss_sundeadkeys) +--p----- a------- fr(oss_nodeadkeys) +--p----- a------- fr(latin9) +--p----- a------- fr(latin9_Sundeadkeys) +--p----- a------- fr(latin9_sundeadkeys) +--p----- a------- fr(latin9_nodeadkeys) +--p----- a------- fr(bepo) +--p----- a------- fr(bepo_latin9) +--p----- am------ fr(dvorak) +--p----- a------- fr(bre) +--p----- a------- fr(oci) +--p----- a------- fr(mac) +--p----- a------- fr(geo) +--p----- -------- nbsp(none) +--p----- -------- nbsp(level2) +--p----- -------- nbsp(level3) +--p----- -------- nbsp(level3s) +--p----- -------- nbsp(level3n) +--p----- -------- nbsp(level4) +--p----- -------- nbsp(level4n) +--p----- -------- nbsp(level4nl) +-dp----- a------- nl(basic) +--p----- a------- nl(std) +--p----- a------- nl(Sundeadkeys) +--p----- a------- nl(sundeadkeys) +--p----- a------- nl(mac) +-dp----- a------- cd(basic) +-dp----- a------- se(basic) +--p----- a------- se(se) +--p----- a------- se(nodeadkeys) +--p----- a------- se(dvorak) +--p----- a------- se(rus) +--p----- a------- se(rus_nodeadkeys) +-------- -------- se(smi) +--p----- a------- se(mac) +--p----- a------- se(svdvorak) +-dp----- am------ us(basic) +--p----- a------- us(euro) +--p----- a------- us(intl) +--p----- a------- us(alt-intl) +--p----- a------- us(dvorak) +--p----- a------- us(dvorak-intl) +--p----- a------- us(dvorak-l) +--p----- a------- us(dvorak-r) +--p----- a------- us(dvorak-classic) +--p----- a------- us(dvp) +--p----- a------- us(rus) +--p----- a------- us(mac) +--p----- a------- us(colemak) +--p----- a------- us(altgr-intl) +--p----- a------- us(classmate) +--p----- a------- us(classmate-intl) +--p----- a------- us(classmate-alt-intl) +--p----- a------- us(classmate-altgr-intl) +--p----- a------- us(olpc) +--p----- a------- us(olpc2) +--p----- am------ us(chr) +-dp----- a------- la(basic) +--p----- -m------ group(switch) +--p----- -m------ group(lswitch) +--p----- -m------ group(win_switch) +--p----- -m------ group(lwin_switch) +--p----- -m------ group(rwin_switch) +--p----- -m------ group(rctrl_switch) +--p----- -m------ group(toggle) +--p----- -m------ group(shifts_toggle) +--p----- -m------ group(ctrl_shift_toggle) +--p----- -m------ group(lctrl_lshift_toggle) +--p----- -m------ group(shift_caps_toggle) +--p----- -m------ group(shift_caps_switch) +--p----- -m------ group(win_menu_switch) +--p----- -m------ group(ctrl_alt_toggle) +--p----- -m------ group(alt_shift_toggle) +--p----- -m------ group(menu_toggle) +--p----- -m------ group(lwin_toggle) +--p----- -m------ group(rwin_toggle) +--p----- -m------ group(ctrls_toggle) +--p----- -m------ group(alts_toggle) +--p----- -m------ group(lshift_toggle) +--p----- -m------ group(rshift_toggle) +--p----- -m------ group(lalt_toggle) +--p----- -m------ group(lctrl_toggle) +--p----- -m------ group(rctrl_toggle) +--p----- -m------ group(alt_caps_toggle) +h-p----- -m------ group(olpc) +--p----- -m------ group(alt_space_toggle) +--p----- -m------ group(sclk_toggle) +-dp----- am------ za(basic) +-dp----- a------- vn(basic) +-dp----- -------- tm(basic) +--p----- -------- tm(alt) +-dp----- a------- es(basic) +--p----- a------- es(Sundeadkeys) +--p----- a------- es(sundeadkeys) +--p----- a------- es(nodeadkeys) +--p----- a------- es(dvorak) +--p----- a------- es(cat) +--p----- a------- es(ast) +--p----- a------- es(mac) +--p----- a------- es(olpc) +--p----- a------- es(deadtilde) +-dp----- a------- it(basic) +--p----- a------- it(nodeadkeys) +--p----- a------- it(mac) +--p----- a------- it(geo) +-------- -------- it(olpc) +--p----- am------ it(us) +-dp----- a------- th(basic) +--p----- a------- th(pat) +--p----- a------- th(tis) +--p----- a------- th(olpc) +-dp----- a------- pk(urd-phonetic) +--p----- a------- pk(urd-crulp) +--p----- a------- pk(urd-nla) +--p----- a------- pk(ara) +--p----- a------- pk(olpc) +-dp----- a------- is(basic) +--p----- a------- is(Sundeadkeys) +--p----- a------- is(nodeadkeys) +--p----- a------- is(mac) +--p----- a------- is(dvorak) +-dp----- a------- np(basic) +--p----- a------- np(olpc) +-dp----- a------- kg(basic) +--p----- a------- kg(phonetic) +-dp----- a------- ad(basic) +-dp----- a------- mt(basic) +--p----- a------- mt(us) -dp----- a------- ru(winkeys) h-p----- a------- ru(common) --p----- a------- ru(legacy) @@ -855,46 +853,53 @@ h-p----- a------- ru(common) --p----- a------- ru(xal) --p----- a------- ru(dos) --p----- a------- ru(bak) --dp----- am------ lv(basic) ---p----- am------ lv(apostrophe) ---p----- am------ lv(tilde) ---p----- am------ lv(fkey) --dp----- a------- si(basic) ---p----- a------- si(us) ---p----- a------- si(alternatequotes) --dp----- a------- bt(basic) ---p----- -m------ compose(ralt) ---p----- -m------ compose(lwin) ---p----- -m------ compose(rwin) ---p----- -m------ compose(menu) ---p----- -m------ compose(rctrl) ---p----- -m------ compose(caps) ---p----- -m------ compose(102) --dp----- a------- az(latin) ---p----- a------- az(cyrillic) ---p----- -m------ ctrl(nocaps) ---p----- -m------ ctrl(swapcaps) ---p----- -m------ ctrl(ctrl_ac) ---p----- -m------ ctrl(ctrl_aa) ---p----- -m------ ctrl(ctrl_ra) --dp----- a------- brai(home_row) ---p----- a------- brai(left_hand) ---p----- a------- brai(right_hand) -h-p----- --k----- brai(keypad) --dp----- -------- tm(basic) ---p----- -------- tm(alt) --dp----- a------- kz(basic) ---p----- a------- kz(ruskaz) ---p----- a------- kz(kazrus) ---p----- a------- kz(olpc) --dp----- a------- la(basic) --dp----- a------- fi(kotoistus) ---p----- a------- fi(classic) -h-p----- a------- fi(fi) ---p----- a------- fi(nodeadkeys) --------- -------- fi(smi) ---p----- a------- fi(mac) --dp----- a------- al(basic) +-d------ -------- digital_vndr/lk(common) +-------- -------- digital_vndr/lk(lk401) +-------- -------- digital_vndr/pc(pc) +-------- -------- digital_vndr/pc(pc104) +-------- -------- digital_vndr/vt(vt105) +-------- -------- digital_vndr/vt(vt108) +-------- -------- digital_vndr/us(us) +-------- -------- digital_vndr/us(vt105-tw) +-------- -------- digital_vndr/us(vt105-dp) +-------- -------- digital_vndr/us(vt105) +-------- -------- digital_vndr/us(vt108-tw) +-------- -------- digital_vndr/us(vt108-dp) +-------- -------- digital_vndr/us(vt108) +-------- -------- digital_vndr/us(unix) +-------- -------- digital_vndr/us(pcxalga) +-------- -------- digital_vndr/us(pcxal) +-------- -------- digital_vndr/us(pcxalaa) +-------- -------- digital_vndr/us(pcxalfa) +-------- -------- digital_vndr/us(pcxalka) +-------- -------- digital_vndr/us(lk44x) +-------- -------- digital_vndr/us(pc104) +-dp----- a------- epo(basic) +--p----- a------- epo(legacy) +--p----- -------- epo(qwerty) +--p----- -------- epo(dvorak) +hdp----- -m------ capslock(capslock) +h-p----- -m------ capslock(shiftlock) +h-p----- -m------ capslock(grouplock) +h-p----- -m------ capslock(swapescape) +h-p----- -m------ capslock(groupshift) +h-p----- -m------ capslock(escape) +h-p----- -m------ capslock(backspace) +h-p----- -m------ capslock(super) +h-p----- -m------ capslock(hyper) +h-p----- -m------ capslock(none) +h-p----- -m------ capslock(numlock) +-dp----- a------- mk(basic) +--p----- a------- mk(nodeadkeys) +-dp----- a------- uz(cyrillic) +--p----- a------- uz(latin) +--p----- -------- uz(crh) +--p----- -------- uz(crh_f) +--p----- -------- uz(crh_alt) +-dp----- a------- ee(basic) +--p----- a------- ee(nodeadkeys) +--p----- a------- ee(dvorak) +--p----- a------- ee(us) -dp----- a------- gh(basic) --p----- a------- gh(akan) --p----- a------- gh(ga) @@ -902,8 +907,3 @@ h-p----- a------- fi(fi) --p----- a------- gh(fula) --p----- a------- gh(hausa) --p----- a------- gh(generic) --------- -------- fujitsu_vndr/jp --------- -------- fujitsu_vndr/us --dp----- a------- kg(basic) ---p----- a------- kg(phonetic) ---p----- -m------ shift(breaks_caps) diff --git a/xorg-server/xkbdata.src/types/types.dir b/xorg-server/xkbdata.src/types/types.dir index 9e15cdc98..746d2f4d2 100644 --- a/xorg-server/xkbdata.src/types/types.dir +++ b/xorg-server/xkbdata.src/types/types.dir @@ -1,18 +1,18 @@ --dp----- -------- pc(default) -dp----- -------- mousekeys(default) --p----- -------- caps(internal) --p----- -------- caps(internal_nocancel) --p----- -------- caps(shift) --p----- -------- caps(shift_nocancel) --dp----- -------- extra(default) ---p----- -------- extra(keypad) ---p----- -------- extra(mac_keypad) -d------ -------- default(default) --dp----- -------- iso9995(default) -d------ -------- complete(complete) +-dp----- -------- iso9995(default) +-d------ -------- basic(basic) -dp----- -------- level5(default) +-dp----- -------- pc(default) +-dp----- -------- extra(default) +--p----- -------- extra(keypad) +--p----- -------- extra(mac_keypad) -dp----- -------- cancel(Shift_Cancels_Caps) --d------ -------- basic(basic) -dp----- -------- numpad(pc) --p----- -------- numpad(mac) --p----- -------- numpad(microsoft) diff --git a/xorg-server/xkbdata.src/xkeyboard-config.spec b/xorg-server/xkbdata.src/xkeyboard-config.spec index 65f2153a1..3f6f7694d 100644 --- a/xorg-server/xkbdata.src/xkeyboard-config.spec +++ b/xorg-server/xkbdata.src/xkeyboard-config.spec @@ -1,6 +1,6 @@ Name: xkeyboard-config Summary: XML-based XKB configuration registry -Version: 1.6.99 +Version: 1.7 Release: 1 License: X11/MIT Group: User Interface/X |