<commit_before>/*
 * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
 */
#include "e.h"

EAPI Ecore_X_Atom _QTOPIA_SOFT_MENU = 0;
EAPI Ecore_X_Atom _QTOPIA_SOFT_MENUS = 0;

static Ecore_X_Atom gnome_atom = 0;
static Ecore_X_Atom enlightenment_comms = 0;
static Ecore_X_Atom enlightenment_version = 0;
static Ecore_X_Atom enlightenment_scale = 0;

EAPI void
e_hints_init(void)
{
   Ecore_X_Window *roots = NULL;
   int num;
   const char *atom_names[] = {
      "_QTOPIA_SOFT_MENU",
	"_QTOPIA_SOFT_MENUS",
	"GNOME_SM_PROXY",
	"ENLIGHTENMENT_COMMS",
	"ENLIGHTENMENT_VERSION",
	"ENLIGHTENMENT_SCALE"
   };
   Ecore_X_Atom atoms[6];
   
   ecore_x_atoms_get(atom_names, 6, atoms);
   _QTOPIA_SOFT_MENU = atoms[0];
   _QTOPIA_SOFT_MENUS = atoms[1];
   gnome_atom = atoms[2];
   enlightenment_comms = atoms[3];
   enlightenment_version = atoms[4];
   enlightenment_scale = atoms[5];
   
   roots = ecore_x_window_root_list(&num);
   if (roots)
     {
	Ecore_X_Atom supported[42];
	int supported_num, i;

	supported_num = 0;
	/* Set what hints we support */
	/* Root Window Properties (and Related Messages) */
	supported[supported_num++] = ECORE_X_ATOM_NET_CLIENT_LIST;
	supported[supported_num++] = ECORE_X_ATOM_NET_CLIENT_LIST_STACKING;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_GEOMETRY, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_VIEWPORT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_CURRENT_DESKTOP, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_NAMES, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_ACTIVE_WINDOW;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WORKAREA, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK;
	supported[supported_num++] = ECORE_X_ATOM_NET_VIRTUAL_ROOTS;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_LAYOUT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_SHOWING_DESKTOP, 1);*/

	/* Other Root Window Messages */
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_CLOSE_WINDOW, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_MOVERESIZE_WINDOW, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_MOVERESIZE;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_RESTACK_WINDOW, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS;

	/* Application Window Properties */
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_VISIBLE_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_ICON_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_DESKTOP, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MODAL;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_STICKY;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SHADED;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_HIDDEN;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_ABOVE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_BELOW;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MOVE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_RESIZE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_SHADE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_STICK, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_CLOSE, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STRUT;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STRUT_PARTIAL;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ICON_GEOMETRY, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_ICON;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_PID;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_HANDLED_ICONS, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_USER_TIME;
	supported[supported_num++] = ECORE_X_ATOM_NET_FRAME_EXTENTS;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_PING;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_SYNC_REQUEST;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER;
	supported[supported_num++] = ECORE_X_ATOM_MOTIF_WM_HINTS;

	for (i = 0; i < num; i++)
	  {
	     Ecore_X_Window win, twin;
	     int nwins;
	     char *name;
	     double ts;
	     
	     /* check for previous netwm wm and wait for it to die */
	     ts = ecore_time_get();
	     nwins = ecore_x_window_prop_window_get(roots[i], 
						    ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK, 
						    &win, 1);
	     if (nwins > 0)
	       {
		  for (;;)
		    {
		       nwins = ecore_x_window_prop_window_get(win, 
							      ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK, 
							      &twin, 1);
		       if (nwins < 1) break;
		       if (twin != win) break;
		       if (ecore_x_netwm_name_get(win, &name))
			 {
			    if (strcmp(name, "Enlightenment"))
			      {
				 free(name);
				 break;
			      }
			    free(name);
			 }
		       ecore_x_sync();
		       if ((ecore_time_get() - ts) > 2.0)
			 {
			    e_error_message_show(_("A previous instance of Enlightenment is still active\n"
						   "on this screen. Aborting startup.\n"));
			    exit(-1);
			 }
		    }
	       }

	     /* TODO: Remember this window and close it on shutdown */
	     win = ecore_x_window_new(roots[i], -200, -200, 5, 5);
/*	     
 * I don't FUCKING believe it. if we PRETEND we are Kwin - java is happy.
 * why? it expects a double reparenting wm then. java insists on finding this
 * out when it should be irrelevant! stupid code! I can't believe the time we
 * just wasted hunting a bug that wasn't and that is due to sheer stupid
 * coding (in java's awt layer that swing also uses).
 */
/* Now for more stupidity... Openoffice.org will change its look and feel 
 * depending on what wm it thinks there is... so if we pretend to be Kwin...
 * it tries to use kde preferences, if found.
 */
/* I have disabled this now by pretending to be E16 with e16 comms. this
 * means java plays nice and uses our FRAME property.. but we had to do other
 * evil stuff as java EXPECTS all this at REPARENT time... i've deferred
 * reparenting... i hate java!
 */
/*	     ecore_x_netwm_wm_identify(roots[i], win, "KWin");*/
	     ecore_x_netwm_wm_identify(roots[i], win, "Enlightenment");
/* this makes openoffice.org read gtk settings so it doesnt look like shit */
	     e_hints_openoffice_gnome_fake(roots[i]);

	     ecore_x_netwm_supported_set(roots[i], supported, supported_num);

	  }
        free(roots);
     }<commit_msg>fake to be mwm<commit_after>/*
 * vim:ts=8:sw=3:sts=8:noexpandtab:cino=>5n-3f0^-2{2
 */
#include "e.h"

EAPI Ecore_X_Atom _QTOPIA_SOFT_MENU = 0;
EAPI Ecore_X_Atom _QTOPIA_SOFT_MENUS = 0;

static Ecore_X_Atom gnome_atom = 0;
static Ecore_X_Atom enlightenment_comms = 0;
static Ecore_X_Atom enlightenment_version = 0;
static Ecore_X_Atom enlightenment_scale = 0;

EAPI void
e_hints_init(void)
{
   Ecore_X_Window *roots = NULL;
   int num;
   const char *atom_names[] = {
      "_QTOPIA_SOFT_MENU",
	"_QTOPIA_SOFT_MENUS",
	"GNOME_SM_PROXY",
	"ENLIGHTENMENT_COMMS",
	"ENLIGHTENMENT_VERSION",
	"ENLIGHTENMENT_SCALE"
   };
   Ecore_X_Atom atoms[6];
   
   ecore_x_atoms_get(atom_names, 6, atoms);
   _QTOPIA_SOFT_MENU = atoms[0];
   _QTOPIA_SOFT_MENUS = atoms[1];
   gnome_atom = atoms[2];
   enlightenment_comms = atoms[3];
   enlightenment_version = atoms[4];
   enlightenment_scale = atoms[5];
   
   roots = ecore_x_window_root_list(&num);
   if (roots)
     {
	Ecore_X_Atom supported[42];
	int supported_num, i;

	supported_num = 0;
	/* Set what hints we support */
	/* Root Window Properties (and Related Messages) */
	supported[supported_num++] = ECORE_X_ATOM_NET_CLIENT_LIST;
	supported[supported_num++] = ECORE_X_ATOM_NET_CLIENT_LIST_STACKING;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_NUMBER_OF_DESKTOPS, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_GEOMETRY, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_VIEWPORT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_CURRENT_DESKTOP, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_NAMES, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_ACTIVE_WINDOW;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WORKAREA, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK;
	supported[supported_num++] = ECORE_X_ATOM_NET_VIRTUAL_ROOTS;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_DESKTOP_LAYOUT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_SHOWING_DESKTOP, 1);*/

	/* Other Root Window Messages */
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_CLOSE_WINDOW, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_MOVERESIZE_WINDOW, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_MOVERESIZE;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_RESTACK_WINDOW, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_REQUEST_FRAME_EXTENTS;

	/* Application Window Properties */
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_VISIBLE_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_ICON_NAME;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_VISIBLE_ICON_NAME;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_DESKTOP, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DESKTOP;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DOCK;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_TOOLBAR;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_MENU;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_UTILITY;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_SPLASH;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_DIALOG;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_WINDOW_TYPE_NORMAL;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MODAL;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_STICKY;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_VERT;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_MAXIMIZED_HORZ;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SHADED;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SKIP_TASKBAR;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_SKIP_PAGER;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_HIDDEN;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_FULLSCREEN;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_ABOVE;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STATE_BELOW;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_STATE_DEMANDS_ATTENTION, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ALLOWED_ACTIONS, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MOVE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_RESIZE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MINIMIZE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_SHADE, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_STICK, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_HORZ, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_MAXIMIZE_VERT, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_FULLSCREEN, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_CHANGE_DESKTOP, 1);*/
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ACTION_CLOSE, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STRUT;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_STRUT_PARTIAL;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_ICON_GEOMETRY, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_ICON;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_PID;
	/*ecore_x_netwm_supported(roots[supported_num], ECORE_X_ATOM_NET_WM_HANDLED_ICONS, 1);*/
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_USER_TIME;
	supported[supported_num++] = ECORE_X_ATOM_NET_FRAME_EXTENTS;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_PING;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_SYNC_REQUEST;
	supported[supported_num++] = ECORE_X_ATOM_NET_WM_SYNC_REQUEST_COUNTER;
	supported[supported_num++] = ECORE_X_ATOM_MOTIF_WM_HINTS;

	for (i = 0; i < num; i++)
	  {
	     Ecore_X_Window win, twin;
	     int nwins;
	     char *name;
	     double ts;
	     
	     /* check for previous netwm wm and wait for it to die */
	     ts = ecore_time_get();
	     nwins = ecore_x_window_prop_window_get(roots[i], 
						    ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK, 
						    &win, 1);
	     if (nwins > 0)
	       {
		  for (;;)
		    {
		       nwins = ecore_x_window_prop_window_get(win, 
							      ECORE_X_ATOM_NET_SUPPORTING_WM_CHECK, 
							      &twin, 1);
		       if (nwins < 1) break;
		       if (twin != win) break;
		       if (ecore_x_netwm_name_get(win, &name))
			 {
			    if (strcmp(name, "Enlightenment"))
			      {
				 free(name);
				 break;
			      }
			    free(name);
			 }
		       ecore_x_sync();
		       if ((ecore_time_get() - ts) > 2.0)
			 {
			    e_error_message_show(_("A previous instance of Enlightenment is still active\n"
						   "on this screen. Aborting startup.\n"));
			    exit(-1);
			 }
		    }
	       }

	     /* TODO: Remember this window and close it on shutdown */
	     win = ecore_x_window_new(roots[i], -200, -200, 5, 5);
/*	     
 * I don't FUCKING believe it. if we PRETEND we are Kwin - java is happy.
 * why? it expects a double reparenting wm then. java insists on finding this
 * out when it should be irrelevant! stupid code! I can't believe the time we
 * just wasted hunting a bug that wasn't and that is due to sheer stupid
 * coding (in java's awt layer that swing also uses).
 */
/* Now for more stupidity... Openoffice.org will change its look and feel 
 * depending on what wm it thinks there is... so if we pretend to be Kwin...
 * it tries to use kde preferences, if found.
 */
/* I have disabled this now by pretending to be E16 with e16 comms. this
 * means java plays nice and uses our FRAME property.. but we had to do other
 * evil stuff as java EXPECTS all this at REPARENT time... i've deferred
 * reparenting... i hate java!
 */
/*	     ecore_x_netwm_wm_identify(roots[i], win, "KWin");*/
	     ecore_x_netwm_wm_identify(roots[i], win, "Enlightenment");
/* this makes openoffice.org read gtk settings so it doesnt look like shit */
	     e_hints_openoffice_gnome_fake(roots[i]);

	     ecore_x_netwm_supported_set(roots[i], supported, supported_num);

	     /* fake mwm, this might crash some ol' motif apps, if
		they still exist, but at least it makes borderless
		feature of Eterm and urxvt work... */
	     ecore_x_atom_get("_MOTIF_WM_INFO");
	  }
        free(roots);
     }
{'fraction_non_alphanumeric': 0.10548134500230309, 'fraction_numerical': 0.0081759557807462, 'mean_word_length': 5.82475442043222, 'pattern_counts': {'":': 0, '<': 7, '<?xml version=': 0, '>': 9, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 2, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '7613913', 'n_tokens_mistral': 7425, 'n_tokens_neox': 6894, 'n_words': 1053}