From 95c74eae269b2b9e4bc514581b5caa1d80b54acc Mon Sep 17 00:00:00 2001 From: Eelco Dolstra Date: Thu, 27 Sep 2012 15:43:08 -0400 Subject: Allow dashes in identifiers In Nixpkgs, the attribute in all-packages.nix corresponding to a package is usually equal to the package name. However, this doesn't work if the package contains a dash, which is fairly common. The convention is to replace the dash with an underscore (e.g. "dbus-lib" becomes "dbus_glib"), but that's annoying. So now dashes are valid in variable / attribute names, allowing you to write: dbus-glib = callPackage ../development/libraries/dbus-glib { }; and buildInputs = [ dbus-glib ]; Since we don't have a negation or subtraction operation in Nix, this is unambiguous. --- src/libexpr/lexer.l | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/libexpr/lexer.l b/src/libexpr/lexer.l index d46b66d9ff7c..b61d5ea7713c 100644 --- a/src/libexpr/lexer.l +++ b/src/libexpr/lexer.l @@ -78,7 +78,7 @@ static Expr * unescapeStr(SymbolTable & symbols, const char * s) %} -ID [a-zA-Z\_][a-zA-Z0-9\_\']* +ID [a-zA-Z\_][a-zA-Z0-9\_\'\-]* INT [0-9]+ PATH [a-zA-Z0-9\.\_\-\+]*(\/[a-zA-Z0-9\.\_\-\+]+)+ SPATH \<[a-zA-Z0-9\.\_\-\+]+(\/[a-zA-Z0-9\.\_\-\+]+)*\> -- cgit 1.4.1