These are two aggregate file types which are not used anywhere. We
maintain useful-enough backward compatibility in the parser, by treating
them as xkb_keymap. The keymap type allows for all types of components,
so they will still compile fine if they ever come up.
Signed-off-by: Ran Benita <ran234@gmail.com>
XkbcConfigText(unsigned config)
{
switch (config) {
XkbcConfigText(unsigned config)
{
switch (config) {
- case XkmSemanticsFile:
- return "Semantics";
- case XkmLayoutFile:
- return "Layout";
case XkmKeymapFile:
return "Keymap";
case XkmTypesIndex:
case XkmKeymapFile:
return "Keymap";
case XkmTypesIndex:
#include "utils.h"
/* From XKM.h */
#include "utils.h"
/* From XKM.h */
-#define XkmSemanticsFile 20
-#define XkmLayoutFile 21
#define XkmKeymapFile 22
#define XkmRulesFile 24
#define XkmKeymapFile 22
#define XkmRulesFile 24
#define XkmKeyNamesMask (1<<4)
#define XkmGeometryMask (1<<5)
#define XkmKeyNamesMask (1<<4)
#define XkmGeometryMask (1<<5)
-#define XkmSemanticsRequired (XkmCompatMapMask)
-#define XkmSemanticsOptional (XkmTypesMask|XkmGeometryMask)
-#define XkmSemanticsLegal (XkmSemanticsRequired|XkmSemanticsOptional)
-#define XkmLayoutRequired (XkmKeyNamesMask|XkmSymbolsMask|XkmTypesMask)
-#define XkmLayoutOptional (XkmGeometryMask)
-#define XkmLayoutLegal (XkmLayoutRequired|XkmLayoutOptional)
-#define XkmKeymapRequired (XkmSemanticsRequired|XkmLayoutRequired)
-#define XkmKeymapOptional ((XkmSemanticsOptional|XkmLayoutOptional)&(~XkmKeymapRequired))
+#define XkmKeymapRequired (XkmCompatMapMask|XkmKeyNamesMask|XkmSymbolsMask|XkmTypesMask)
+#define XkmKeymapOptional ((XkmTypesMask|XkmGeometryMask)&(~XkmKeymapRequired))
#define XkmKeymapLegal (XkmKeymapRequired|XkmKeymapOptional)
struct xkb_any_action {
#define XkmKeymapLegal (XkmKeymapRequired|XkmKeymapOptional)
struct xkb_any_action {
mainName = file->name ? file->name : "(unnamed)";
switch (mainType)
{
mainName = file->name ? file->name : "(unnamed)";
switch (mainType)
{
- case XkmSemanticsFile:
- required = XkmSemanticsRequired;
- legal = XkmSemanticsLegal;
- break;
- case XkmLayoutFile: /* standard type if setxkbmap -print */
- required = XkmLayoutRequired;
- legal = XkmKeymapLegal;
- break;
case XkmKeymapFile:
required = XkmKeyNamesIndex | XkmTypesIndex | XkmSymbolsIndex |
XkmCompatMapIndex;
case XkmKeymapFile:
required = XkmKeyNamesIndex | XkmTypesIndex | XkmSymbolsIndex |
XkmCompatMapIndex;
WSGO("Unknown file type %d\n", file->type);
ACTION("Ignored\n");
continue;
WSGO("Unknown file type %d\n", file->type);
ACTION("Ignored\n");
continue;
- case XkmSemanticsFile:
- case XkmLayoutFile:
case XkmKeymapFile:
WSGO("Illegal %s configuration in a %s file\n",
XkbcConfigText(file->type), XkbcConfigText(mainType));
case XkmKeymapFile:
WSGO("Illegal %s configuration in a %s file\n",
XkbcConfigText(file->type), XkbcConfigText(mainType));
;
XkbCompositeType: XKB_KEYMAP { $$= XkmKeymapFile; }
;
XkbCompositeType: XKB_KEYMAP { $$= XkmKeymapFile; }
- | XKB_SEMANTICS { $$= XkmSemanticsFile; }
- | XKB_LAYOUT { $$= XkmLayoutFile; }
+ | XKB_SEMANTICS { $$= XkmKeymapFile; }
+ | XKB_LAYOUT { $$= XkmKeymapFile; }
;
XkbMapConfigList : XkbMapConfigList XkbMapConfig
;
XkbMapConfigList : XkbMapConfigList XkbMapConfig
switch (file->type)
{
case XkmKeymapFile:
switch (file->type)
{
case XkmKeymapFile:
- case XkmSemanticsFile:
- case XkmLayoutFile:
FreeXKBFile((XkbFile *)file->defs);
break;
case XkmTypesIndex:
FreeXKBFile((XkbFile *)file->defs);
break;
case XkmTypesIndex:
- case XkmSemanticsFile:
- return "semantics";
- case XkmLayoutFile:
- return "layout";
case XkmKeymapFile:
return "keymap";
case XkmKeyNamesIndex:
case XkmKeymapFile:
return "keymap";
case XkmKeyNamesIndex:
*
* @param ctx the XKB ctx containing the include paths
* @param type one of XkbTypesIndex, XkbCompatMapIndex, ..., or
*
* @param ctx the XKB ctx containing the include paths
* @param type one of XkbTypesIndex, XkbCompatMapIndex, ..., or
- * XkbSemanticsFile, XkmKeymapFile, ...
* @param pathReturn is set to the full path of the file if found.
*
* @return an FD to the file or NULL. If NULL is returned, the value of
* @param pathReturn is set to the full path of the file if found.
*
* @return an FD to the file or NULL. If NULL is returned, the value of
/* Find map to use */
mapToUse = XkbChooseMap(file, NULL);
/* Find map to use */
mapToUse = XkbChooseMap(file, NULL);
- if (!mapToUse)
- goto err;
-
- switch (mapToUse->type) {
- case XkmSemanticsFile:
- case XkmLayoutFile:
- case XkmKeymapFile:
- break;
- default:
+ if (!mapToUse || mapToUse->type != XkmKeymapFile) {
ERROR("file type %d not handled\n", mapToUse->type);
goto err;
}
ERROR("file type %d not handled\n", mapToUse->type);
goto err;
}